Submit Search
ロケタッチの裏側
•
9 likes
•
1,748 views
livedoor
Follow
1 of 21
Download now
Downloaded 15 times
More Related Content
ロケタッチの裏側
1.
ロケタッチの裏側
株式会社ライブドア 開発部 吉川英興 http://tou.ch/ © 2010 livedoor Co.,Ltd.
2.
自己紹介
開発部 新規開発グループ 吉川英興 @hideoki http://tou.ch/ © 2010 livedoor Co.,Ltd.
3.
目次
•ロケタッチとは •システム構成 •位置情報関連 http://tou.ch/ © 2010 livedoor Co.,Ltd.
4.
ロケタッチとは http://tou.ch/
© 2010 livedoor Co.,Ltd.
5.
ロケタッチとは
•ライブドアの提供する位置情報サービス •スマートフォン向けWeb版 2010年7月15日 •iPhoneアプリ、携帯向けサービスは開発中 •http://tou.ch/ •Twitter @loctouch http://tou.ch/ © 2010 livedoor Co.,Ltd.
6.
どんなサービスか •いった場所やものを記録(タッ
チ) •自分や友達がタッチした記 録が地図になる •タッチした時間や場所によっ てシールがもらえる •今週GMS名古屋で発表 http://tou.ch/ © 2010 livedoor Co.,Ltd.
7.
ロケタッチのシステム http://tou.ch/
© 2010 livedoor Co.,Ltd.
8.
開発言語
•Perl App Server : Starman WAF : Sledge + PSGI •JavaScript jQuery http://tou.ch/ © 2010 livedoor Co.,Ltd.
9.
システム構成 典型的なLAMP構成
Linux Apache MySQL Starman http://tou.ch/ © 2010 livedoor Co.,Ltd.
10.
位置情報関連 http://tou.ch/
© 2010 livedoor Co.,Ltd.
11.
Google Maps API
V3 Default Stlyed Map http://tou.ch/ © 2010 livedoor Co.,Ltd.
12.
Geolocation API
ブラウザから現在位置を取得するためのAPI いまどきのスマートフォンで利用可能 Firefox や chrome などからもつかえる Android1.6以前では Gears を利用する http://tou.ch/ © 2010 livedoor Co.,Ltd.
13.
Geolocation API
navigator.geolocation.getCurrentPosition( function (curPos) { var lat = curPos.coords.latitude; var lng = curPos.coords.longitude; // ここに処理 }, function (error) { // 失敗したときの処理 }, { enableHighAccuracy: true, maximumAge: 5 * 60 * 1000, timeout: 30 * 1000, } ); http://tou.ch/ © 2010 livedoor Co.,Ltd.
14.
空間インデックス
問題 現在地の近くのレコードを検索 SELECT * FROM spot WHERE lat >= ? AND lat < ? AND lng >= ? AND lng < ? lng にはインデックスがが効かない http://tou.ch/ © 2010 livedoor Co.,Ltd.
15.
空間インデックス
特殊なデータ構造を用いる R-Tree 4分木 簡易なデータ構造 グリッド http://tou.ch/ © 2010 livedoor Co.,Ltd.
16.
主なグリッドの例
地域メッシュ(総務省 iエリアメッシュ MGRS geohex geohash http://tou.ch/ © 2010 livedoor Co.,Ltd.
17.
Geohash
経緯度の範囲を文字列で表現 文字列の長さで精度を変えられる 長いgeohashを使えば実質地点を表現できる http://tou.ch/ © 2010 livedoor Co.,Ltd.
18.
例
xn774c xn774ck http://tou.ch/ © 2010 livedoor Co.,Ltd.
19.
Geohashの利用
DB に保存してインデックスとして利用 spot 12桁 -> LIKE で先頭マッチ touch 6桁 -> IN を使った検索 http://tou.ch/ © 2010 livedoor Co.,Ltd.
20.
利点
先頭マッチで必要な精度で検索できる キャッシュに乗せやすい 変換表を持たなくてよい 欠点 文字数の偶奇でメッシュの形状が違う 高緯度でメッシュが狭くなる http://tou.ch/ © 2010 livedoor Co.,Ltd.
21.
ご清聴ありがとうございました
ライブドアではエンジニアを募集しています • 明日 18:00~GMS名古屋で発表あります • ハッシュタグ #gms_nagoya • Ust あり http://tou.ch/ © 2010 livedoor Co.,Ltd.
Download