FAQ: Atlas Search
Nesta página
- Serei cobrado ao ativar e usar o Atlas Search?
- Posso executar queries do Atlas Search com correspondência parcial de strings?
- Posso realizar uma pesquisa sem diferenciação de maiúsculas e minúsculas com o operador
wildcard
ouregex
? - O
storedSource
é compatível com agrupamento que não diferencia maiúsculas de minúsculas em campos? - Como os índices do Atlas Search funcionam em shards?
- Posso utilizar a chave de shard para executar queries no Atlas Search em shards específicos?
- As queries são executadas em nós primários ou secundários?
- Posso duplicar um índice?
- O Atlas Search armazena meu índice inteiro na memória?
- Por que meu índice de pesquisa está desaparecendo?
- Posso restaurar índices do Atlas Search de snapshots de backups em nuvem?
- O Atlas Search é compatível com clientes de criptografia CSFLE?
- Posso fazer queries em dados com criptografia CSFLE?
- Posso usar Queryable Encryption com o Atlas Search?
- Posso utilizar o Atlas Search em coleção de séries temporais?
- Posso solicitar novas funcionalidades?
- O MongoDB Support pode acessar sua infraestrutura de pesquisa e logs?
- Posso executar uma query do
em múltiplas collections?
Serei cobrado ao ativar e usar o Atlas Search?
Não, não há taxas ou encargos adicionais quando você ativa o Atlas Search no seu cluster do Atlas. No entanto, você pode observar um aumento na utilização de recursos no cluster, dependendo de fatores como o tamanho das coleções indexadas ou definições de índice. Para gerenciar e controlar a utilização de recursos do Atlas Search, você pode implantar nós de pesquisa dedicados, que é um custo aditivo por nó. Recomendamos isso para seu ambiente de produção.
Posso executar queries do Atlas Search com correspondência parcial de strings?
Sim. Os seguintes operadores do Atlas Search aceitam queries de correspondências parciais de strings:
Posso realizar uma pesquisa sem distinção entre maiúsculas e minúsculas com o operador wildcard
regex
ou ?
Sim. Você pode usar os operadores wildcard e regex com um analisador customizado para realizar uma pesquisa sem distinção entre maiúsculas e minúsculas. Você pode definir um analisador customizado com o seguinte tokenizador e filtro de token para executar uma pesquisa curinga que não diferencia maiúsculas e minúsculas:
Tokenizador de palavra-chave
filtro de token em letras minúsculas
O storedSource
é compatível com agrupamento que não diferencia maiúsculas de minúsculas em campos?
Sim. A opção storedSource do Atlas Search armazena valores originais. Para executar operações que não diferenciam maiúsculas de minúsculas após o estágio $search
nos resultados retornados usando a opção returnStoredSource, você deve definir a força de agrupamento padrão da sua collection como 1
ou 2
ao criá-la e não deve especificar um agrupamento diferente em suas queries e índices.
Como os índices do Atlas Search funcionam em shards?
Se você adicionar fragmentos a uma coleção com um índice existente do Atlas Search , ocorrerá uma sincronização inicial nos fragmentos recém-adicionados para esse índice do Atlas Search . O índice do Atlas Search de cada shard contém somente os documentos da coleção que existe nesse shard. Para saber mais, consulte Shard a Global Collection.
Aviso
Se você fragmentar uma collection que já tenha um índice do Atlas Search, poderá passar por um breve período de inatividade de query quando a coleção começar a aparecer em um fragmento. Além disso, se você adicionar um fragmento a uma coleção já fragmentada que contenha um índice do Atlas Search, suas pesquisas nessa coleção falharão até que o processo de initial sync seja concluído nos fragmentos adicionados. Para saber mais, consulte processo de sincronização inicial.
Posso utilizar a chave de shard para executar queries no Atlas Search em shards específicos?
Não, você não pode usar a chave de shard para executar queries do Atlas Search em um shard específico ou em um subconjunto de shards. Em um ambiente de cluster fragmentado, as queries do Atlas Search são queries dispersas executadas em todos os shards.
No entanto, se você usar zonas para distribuir uma coleção fragmentada em um subconjunto dos fragmentos no cluster, o Atlas Search roteará a query para a zona que contém os fragmentos da coleção que você está fazendo query e executará suas queries $search
somente nos fragmentos em que a coleção está localizada.
As queries são executadas em nós primários ou secundários?
Por padrão, as queries são executadas no nó primário. Você pode configurar sua read preference ou usar marcações de conjunto de réplicas para especificar a read preference. Para saber mais, consulte Visão geral do Atlas Search.
Posso duplicar um índice?
Sim, você pode duplicar seu índice executando o seguinte:
Crie um novo índice Atlas Search.
Criar um índice com o JSON Editor do Atlas Search. Cole o índice que você copiou e clique em Create Search Index. Você pode fazer as edições desejadas diretamente no JSON Editor ou no Visual Index Builder do Atlas Search depois de criar o índice do Atlas Search.
Observação
Em andamento
No momento, estamos trabalhando em uma solução para isso que não requer as etapas mencionadas acima. Se você quiser votar nesse recurso ou enviar seu feedback, consulte este item de feedback.
O Atlas Search armazena meu índice inteiro na memória?
Não, o Atlas Search usa memória para as métricas de heap da JVM, que armazena o preenchimento automático e os tokens de texto de seu índice de pesquisa. Semelhante a outros mecanismos de banco de dados, o Atlas Search armazena a maioria dos arquivos de índice no disco, que se beneficia do cache de página do sistema operacional subjacente.
Por que meu índice de pesquisa está desaparecendo?
Certifique-se de que inseriu os nomes corretos do banco de dados e da collection. Se você inserir um nome de banco de dados ou collection inexistente, a UI do Atlas criará o índice temporariamente e o excluirá logo em seguida.
Se você utilizar o estágio de aggregation
$out
para substituir sua collection, deverá excluir e recriar seu índice do Atlas Search , pois os índices do Atlas Search não são copiados para collections de destino. Para saber mais, consulte Restrições do índice $out.Se você fizer reshard de uma coleção que usa o Atlas Search, a operação removerá índices de pesquisa existentes. Depois que a operação de fragmentação for concluída, você deverá reconstruir manualmente o índice de pesquisa da sua coleção.
Posso restaurar índices do Atlas Search de snapshots de backups em nuvem?
Para clusters dedicados M10+
que executam o MongoDB 4.2 ou superior, o Atlas restaurará as definições de índice do Atlas Search a partir de um snapshot do backup em nuvem. O Atlas não restaura os dados do índice, portanto, os processos mongot
executam sincronizações iniciais para todas as definições de índice restaurado. Se você definiu grandes índices de pesquisa em seu cluster, poderá ter atrasos durante as restaurações de snapshot.
O Atlas Search é compatível com clientes de criptografia CSFLE ?
Sim, você pode usar clientes com criptografia CSFLE para executar queries do Atlas Search em dados no MongoDB versão 6.0 e posterior.
Posso fazer queries em dados com criptografia CSFLE ?
Não, você não pode fazer uma query de dados criptografados com CSFLE usando o Atlas Search.
Posso usar Queryable Encryption com o Atlas Search?
Não, a Queryable Encryption é incompatível com o Atlas Search.
Posso utilizar o Atlas Search em coleção de séries temporais?
Não, você não pode usar o Atlas Search em coleções de séries temporais.
Posso solicitar novas funcionalidades?
Sim, o uso pode solicitar uma nova funcionalidade ou votar em uma solicitação existente usando o MongoDB Feedback Engine.
O MongoDB Support pode acessar sua infraestrutura de pesquisa e logs?
Sim, o Suporte do MongoDB pode acessar sua infraestrutura do Atlas Search em nós dedicados e colocalizados, bem como baixar logs mongot
desses nós. No entanto, você pode bloquear o acesso do Surpote do MongoDB no nível da organização e, em seguida, conceder acesso ao Suporte do MongoDB por 24 horas, se necessário. Para saber mais, consulte Configurar o acesso do suporte do MongoDB à infraestrutura de backend do Atlas.
Posso executar uma query do em múltiplas $search
collections?
Não, no entanto, você pode usar $lookup
e $unionWith
para executar uma query de pesquisa em várias collections. Para mais informações, consulte Como Executar Atlas Search em Coleções.