タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

algorithmとperformanceとGeolocationに関するraimon49のブックマーク (3)

  • Wheren っていうのを作ってる話 - soh335 memo

    最近 Wheren っていうのを作っていて簡単に言うと GeoHash に時間を縦軸に加えたものです。いつどこを扱うので where + when を足して wheren です。 緯度経度時刻の範囲をハッシュ化出来るので、その3つの範囲で検索する時に、わりと力を発揮してくれるんじゃないかと思います。下にも書いてあるんですけど、割りと狭い範囲で効いてくる感じなのですれ違い通信とかで使えそうかなぁという感じがしています。 前方一致の仕組みはGeoHash同様に入っています。 soh335/p5-Data-Wheren · GitHub コードはこちら。perlモジュールの書き方がちょっとまだ掴めてないので間違ってたら教えて下さい。 仕組み GeoHash 自体は Z-order っていうのがベースになっていて、それを3次元に展開してるって事です。 GeoHash はハッシュ化する文字列の長さに

    Wheren っていうのを作ってる話 - soh335 memo
    raimon49
    raimon49 2011/11/28
    ANDで検索するよりもpackしてしまった方が速いのか。面白いなぁ。
  • MySQLにおける、GeohashとGeometry型による検索の比較 - Pixel Pedals of Tomakomai

    先日のベンチマークが失敗だったので、改めて自前のスクリプトでベンチとりました。 後、id:kokogiko さんにGeometry型 × SPATIAL インデックスはどーよってツッコミをもらったので、そちらも一緒にベンチをとります。 Geometry型のテーブル定義 前回のGeohashのテーブルを一つ。SPATIALインデックスはMyISAM専用なので、そのテーブルを一つ。後、InnoDBでインデックス貼っていない物を用意しました。InnoDBでno-SPATIALなインデックス張った物も試したかったんですが、手元の環境だとMySQLが落ちてしまうっぽいので今回は省略しました。 CREATE TABLE location ( id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, geohash VARCHAR(10) NOT NULL

    MySQLにおける、GeohashとGeometry型による検索の比較 - Pixel Pedals of Tomakomai
    raimon49
    raimon49 2010/08/27
    MyISAM + SPATIAL INDEXとInnoDB(Geohash) + INDEX
  • Geohash で緯度経度の範囲検索のベンチマークとか - Pixel Pedals of Tomakomai

    Geohash で特定範囲内の地点を取得する時は、以下のような戦略をとるといいみたいです。 東京タワーの周りを探す場合は、「xn76gg」だけを検索するのではなく、’xn76gu’,'xn76gf’,'xn76u5′ ,’xn76ge’,'xn76gs’,'xn76uh’,'xn76u4′,’xn76gd’,'xn76gg’も同時に検索することで、おおよそ 2km*3kmの範囲で検索が可能です。 緯度経度を文字列で表すGeoHash - @masuidrive blog 実際にやってみました。以下の赤い領域に10万個の地点を設置し、緑枠内に含まれる地点(今回は127件)を検索します。緑枠は、(35.727353, 139.716654)〜(35.827353, 139.816654)の範囲です。 下準備 MySQLに以下のようなInnoDBのテーブルを作りました。 CREATE TABLE

    Geohash で緯度経度の範囲検索のベンチマークとか - Pixel Pedals of Tomakomai
    raimon49
    raimon49 2010/08/21
    インデックスから引けるのが強みだなぁ。
  • 1