Important
Deprecation
MongoDB 4.4 deprecates the geoHaystack index and the
geoSearch command. Use a 2d index
with $geoNear or $geoWithin instead.
A haystack index is a special 2d geospatial index that is optimized
to return results over small areas. To create a haystack index see
Create a Haystack Index.
To query a haystack index, use the geoSearch command. You
must specify both the coordinates and the additional
field to geoSearch. For example, to return all documents
with the value restaurant in the type field near the example
point, the command would resemble:
db.runCommand( { geoSearch : "places" , search : { type: "restaurant" } , near : [-74, 40.74] , maxDistance : 10 } )
Note
Haystack indexes are not suited to queries for the complete list of documents closest to a particular location. The closest documents could be more distant compared to the bucket size.
Note
Spherical query operations are not currently supported by haystack indexes.
The find() method cannot access the
haystack index.