Denne præsentation fra Greg Studer (10gen) diskuterer de geospatiale indekser i nogle detaljer:Geospatial Indeksering med MongoDB .
Den geospatiale standardimplementering som i MongoDB 2.2 bruger en 2-D GeoHash tilgang, med variable bits af præcision:
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-tilgangen har kanttilfælde, hvor nogle punkter kan være rumligt tæt på, men har forskellige hashes. MongoDB inkluderer også et Geospatial Haystack Index som er specifikt indstillet til "nær" lang/lat søgninger i små områder med et ekstra indekseret kriterium (f.eks.:"find alle restauranter inden for 25 miles med navnet "foo").
En anden interessant præsentation fra Nicholas Knize (Thermopylae) kontrasterer den nuværende B-tree / GeoHash-tilgang med R- træer . Hvis du springer videre til slide 8, er der en visuel forklaring, der kan være nyttig:RTree Spatial Indexing med MongoDB - MongoDC .