Menu Docs
Página inicial do Docs
/
Atlas
/ / /

Processar dados com analisadores

Você pode controlar como o MongoDB Search transforma o string conteúdo de um campo do em termos pesquisáveis utilizando analisadores. Analisadores são políticas que combinam um tokenizador, que extrai tokens do texto, com filtros definidos por você. O MongoDB Search aplica seus filtros aos tokens para criar termos indexáveis que corrigem diferenças de pontuação, maiúsculas, palavras de preenchimento e muito mais.

Você pode especificar analyzers em sua definição de índice para o MongoDB Search usar ao criar um índice ou pesquisar em seu banco de dados. Você também pode especificar analisadores alternativos (multi) para usar ao indexar campos individuais ou definir seus próprios analisadores personalizados.

As abas a seguir mostram a sintaxe das opções do analisador que você pode configurar na definição do seu índice:

Você pode especificar um analisador de índice para o MongoDB Search para aplicar aos campos de string ao construir um índice utilizando a opção analyzer em sua definição de índice do MongoDB Search.

A Pesquisa do MongoDB aplica o analisador de nível superior a todos os campos na definição do índice, a menos que você especifique um analisador diferente para um campo dentro da definição mappings.fields para seu campo.

Se você omitir a analyzer opção, o padrão do MongoDB Search será usar o analisador padrão.

1{
2 "analyzer": "<analyzer-for-index>",
3 "mappings": {
4 "fields": {
5 "<string-field-name>": {
6 "type": "string",
7 "analyzer": "<analyzer-for-field>"
8 }
9 }
10 }
11}

Você pode especificar um analisador de pesquisa para o MongoDB Search para aplicar ao texto de query usando a opção searchAnalyzer em sua definição de índice do MongoDB Search.

Se você omitir a searchAnalyzer opção, o MongoDB Search assumirá como analyzer padrão o analisadorespecificado para a opção. Se você omitir ambas as opções, o padrão do MongoDB Search é usar o analisador padrão.

1{
2 "searchAnalyzer": "<analyzer-for-query>",
3 "mappings": {
4 "dynamic": <boolean>,
5 "fields": { <field-definition> }
6 }
7}

Você pode especificar um analisador alternativo para o MongoDB Search aplicar aos campos de string ao criar um índice usando a opção multi em sua definição de índice do MongoDB Search.

Para usar o analisador alternativo em uma query do MongoDB Search, você deve especificar o nome do analisador alternativo no multi campo do caminho da query do seu operador de query.

Para saber mais, consulte Multianalisador.

1{
2 "mappings": {
3 "fields": {
4 "<string-field-name>": {
5 "type": "string",
6 "analyzer": "<default-analyzer-for-field>",
7 "multi": {
8 "<alternate-analyzer-name>": {
9 "type": "string",
10 "analyzer": "<alternate-analyzer-for-field>"
11 }
12 }
13 }
14 }
15 }
16}

Você pode definir um ou mais analisadores personalizados para transformar, filtrar e agrupar sequências de caracteres usando a opção analyzers no índice do MongoDB Search.

Para utilizar um analisador personalizado que você definiu, especifique o valor name na definição do índice nas opções analyzer, searchAnalyzer ou multi.analyzer.

Para saber mais, consulte Analisadores personalizados.

1{
2 "mappings": {
3 "dynamic": <boolean>,
4 "fields": { <field-definition> }
5 },
6 "analyzers": [
7 {
8 "name": "<custom-analyzer-name>",
9 "tokenizer": {
10 "type": "<tokenizer-type>"
11 }
12 }
13 ]
14}

Dica

Aprenda assistindo

Assista a este vídeo para ver como o MongoDB Search usa analisadores para dividir documentos em unidades pesquisáveis e criar um índice invertido.

Duração: 8 Minutos

O MongoDB Search fornece os seguintes analisadores integrados:

Analisador
Descrição

Usa o analisador padrão para todos os índices e queries do MongoDB Search.

Divide o texto em termos pesquisáveis onde quer que ele encontre um caractere que não seja uma letra.

Divide o texto em termos pesquisáveis onde quer que ele encontre um caractere de espaço em branco.

Indexa campos de texto como termos únicos.

Fornece um conjunto de analisadores de texto específicos do idioma.

Se você não especificar um analisador na sua definição de índice, o MongoDB usará o analisador padrão.

Os normalizadores produzem apenas um único token no final da análise. Você pode configurar normalizadores somente na definição de campo do tipo token Search do MongoDB . O MongoDB Search fornece os seguintes normalizadores:

Normalizador
Descrição

lowercase

Transforma o texto em campos de string em letras minúsculas e cria um token para toda a string.

none

Não realiza nenhuma transformação, mas ainda cria um único token .

Para saber mais sobre analisadores, consulte Analisando analisadores para criar o índice de pesquisa correto para seu aplicativo no MongoDB Developer Center.

Voltar

Referência de índice

Nesta página