Fazer query de um índice haystack
Importante
Removido no MongoDB 5.0
O 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 consultar um índice do palheiro, utilize o comando geoSearch
. Você deve especificar as coordenadas e o campo adicional para geoSearch
. Por exemplo, para retornar todos os documentos com o valor restaurant
no campo type
próximo ao ponto de exemplo , o comando seria semelhante:
db.runCommand( { geoSearch : "places" , search : { type: "restaurant" } , near : [-74, 40.74] , maxDistance : 10 } )
Observação
Os índices de haystack não são adequados para queries para a lista completa de documentos mais próximos de um local específico. Os documentos mais próximos podem estar mais distantes em comparação com o tamanho do bucket.
Observação
Atualmente, as operações de query esférica não são suportadas por índices do palheiro.
O método find()
não pode acessar o índice haystack.