ここ数年、自分の近くのお店を探す、対戦相手を探すなど位置情報を起点にしたアプリが多くリリースされています。 その場合、特定の範囲のポイントを検索する必要があり、このような位置情報を高速で手軽に扱えるようにする必要があります。 多くの場合、位置情報は緯度経度(Latitude/Longitude)で示されます。たとえば東京タワーは緯度 35.65861、経度 139.745447という風に表すことができます。 この位置情報を一つの文字列のみで表すアルゴリズムとして、Geohash(wikipedia参照)というものがあります。 先の東京タワーをGeohashで表すと「xn76ggrw26」となります。 実は、Geohashは点ではなく矩形を表します。 文字列の長さが精度になり、文字数が増えるほど小さい矩形を表します。 「xn76ggrw26」は8文字なので、19m*31mぐらいの範囲になりま
![増井雄一郎( @masuidrive )さんの「Geohashを使って位置情報を取得」問題解説記事 #geohash|CodeIQ MAGAZINE](https://cdn-ak-scissors.b.st-hatena.com/image/square/b1864f31ad777961203b13d0f1d0d94ab8c4e967/height=288;version=1;width=512/https%3A%2F%2Fciq-prod-magazine-resources.s3-ap-northeast-1.amazonaws.com%2Fmagazine%2Fwp-content%2Fuploads%2F2013%2F12%2Fb5d698d1131cf59f9c04b91cc6855867.png)