Revise a Syntax do índice do Atlas Search
O Atlas Search pode indexar dados de diferentes maneiras. Ao definir um índice do Atlas Search, você pode especificar um analisador específico ou vários analisadores para indexar determinados campos. Para saber mais, consulte Processar dados com analisadores. Você também pode indexar determinados campos e omitir outros, ou você pode indexar dinamicamente todos os campos em uma collection. Para saber mais, consulte Como definir mapeamentos de campo. Você pode definir índices do Atlas Search por meio da UI do Atlas, Atlas Search API, Atlas CLI, mongosh
ou Drivers.
Esta página descreve a sintaxe JSON e campos para um índice do Atlas Search.
Importante
Sintaxe
1 { 2 "mappings": { 3 "dynamic": <boolean>, 4 "fields": { <field-definition> } 5 } 6 } 7
1 { 2 "analyzer": "<analyzer-for-index>", 3 "searchAnalyzer": "<analyzer-for-query>", 4 "mappings": { 5 "dynamic": <boolean>, 6 "fields": { <field-definition> } 7 }, 8 "analyzers": [ <custom-analyzer> ], 9 "storedSource": <boolean> | { 10 <stored-source-definition> 11 }, 12 "synonyms": [ 13 { 14 "name": "<synonym-mapping-name>", 15 "source": { 16 "collection": "<source-collection-name>" 17 }, 18 "analyzer": "<synonym-mapping-analyzer>" 19 } 20 ] 21 } 22
Opções
Campo | Tipo | necessidade | Descrição |
---|---|---|---|
analyzer | string | Opcional | Especifica o analyzer para aplicar aos campos da string ao indexar. Se você definir isso apenas na parte superior e não especificar um analyzer para os campos na definição do índice, o Atlas Search aplicará esse analyzer a todos os campos. Para usar um analyzer diferente para cada campo, você deve especificar um analyzer diferente para o campo. Se omitido, o padrão será Analyzer padrão. |
analyzers | array de analisadores customizados | Opcional | Especifica os Analyzers customizados a serem usados neste índice. |
mappings | Obrigatório | Especifica como indexar campos em caminhos diferentes para este índice. | |
mappings.dynamic | booleano | Opcional | Habilita ou desabilita o mapeamento dinâmico de campos para este índice. Se definido como Se definido como Se omitido, o padrão é ImportanteO Atlas Search indexa dinamicamente todos os campos em um Para saber mais, consulte exemplo de configuração de índice. |
mappings.fields | documento | Condicional | Necessário apenas se o mapeamento dinâmico estiver desabilitado. Especifica os campos que você deseja indexar. Para saber mais, consulte Definir mapeamentos de campo. ObservaçãoVocê não pode indexar campos que contêm o sinal de dólar ( |
searchAnalyzer | string | Opcional | Especifica o analisador a ser aplicado ao texto de query antes de usá-lo para fazer uma pesquisa. Se omitido, é padronizado para o analisador que você especifica para a opção analyzer . Se você omitir as opções searchAnalyzer e analyzer , o padrão será o analisador padrão. |
storedSource | boolean ou definição de origem armazenada | Opcional | Especifica os campos nos documentos a serem armazenados para pesquisas de tempo de query usando a opção returnedStoredSource. Você pode armazenar campos de todos os tipos de dados no Atlas Search. O valor pode ser um dos seguintes:
Se omitido, o padrão é Observação
|
synonyms | array de Definição de mapeamento de sinônimos | Opcional | Mapeamentos de sinônimos para usar em seu índice. Para saber mais, consulte Definir mapeamentos de sinônimos em seu índice do Atlas Search. ObservaçãoUma definição de índice pode ter somente um mapeamento de sinônimo. |