Fazer query de um índice haystack
Importante
Removido no MongoDB 5.0
MongoDB 5.0 remove o índice geoHaystack obsoleto e o comando geoSearch
. Em vez disso, use um 2d index com $geoNear
ou um dos geospatial query operators compatíveis.
Atualizar sua instância MongoDB para 5.0 e configurar featureCompatibilityVersion para 5.0
excluirá quaisquer índices geoHaystack preexistentes.
Um índice haystack é um índice geoespacial 2d
especial otimizado para retornar resultados em áreas pequenas. Para criar um índice do palheiro, consulte Criar um índice do palheiro.
Para query um índice do monador, use o comando geoSearch
. Você deve especificar as coordenadas e o campo adicional para geoSearch
. Por exemplo, para retornar todos os documento com o valor restaurant
no campo type
próximo ao ponto de exemplo, o comando seria semelhante a:
db.runCommand( { geoSearch : "places" , search : { type: "restaurant" } , near : [-74, 40.74] , maxDistance : 10 } )
Observação
Os índices haystack não são adequados para query da lista completa de documento mais próximos de um local específico. Os documento mais próximos podem estar mais distantes em comparação com o tamanho do bucket.
Observação
No momento , as operações de query esférica não são suportadas por índices do haystack.
O método find()
não pode acessar o índice haystack.