Greg Studer (10gen) によるこのプレゼンテーションでは、地理空間インデックスについて詳しく説明しています:
Geospatial Indexing with MongoDB。
MongoDB 2.2 での標準的な地理空間の実装では、2 次元のGeoHashアプローチを使用して、可変ビットの精度を使用します。
By default, precision is set to 26 bits which is equivalent to approximately
2 feet given (longitude, latitude) location values and default (-180, 180)
bounds.
GeoHash アプローチには、いくつかのポイントが空間的に近いかもしれないが異なるハッシュを持つエッジケースがあります。MongoDB には、地理空間ヘイスタック インデックスも含まれています。これは、1 つの追加のインデックス付き基準 (たとえば、「foo」という名前の 25 マイル以内にあるすべてのレストランを検索する) を使用して、小地域の「近い」長さ/緯度の検索用に特別に調整されています。
Nicholas Knize (Thermopylae) による別の興味深いプレゼンテーションは、現在の B-tree / GeoHash アプローチとR-treesを対比しています。スライド 8 にスキップすると、役立つ視覚的な説明があります:
MongoDB を使用した RTree Spatial Indexing - MongoDC。