Menu Docs

Página inicial do DocsIniciar e gerenciar o MongoDBMongoDB Atlas

Analisadores personalizados

Nesta página

  • Visão geral
  • Sintaxe
  • Atributos
  • Uso
  • Coleção de exemplos
  • Exemplo de analisadores personalizados

Um analyzer do Atlas Search prepara um conjunto de documentos a ser indexado, realizando uma série de operações para transformar, filtrar e agrupar sequências de caracteres. Você pode definir um analisador personalizado para atender suas necessidades de indexação específicas a partir da interface de usuário do Atlas.

Um analisador personalizado tem a seguinte sintaxe:

"analyzers": [
{
"name": "<name>",
"charFilters": [ <list-of-character-filters> ],
"tokenizer": {
"type": "<tokenizer-type>"
},
"tokenFilters": [ <list-of-token-filters> ]
}
]

Um analisador personalizado tem os seguintes atributos:

Atributo
Tipo
Descrição
Obrigatório?
name
string

Nome do analisador personalizado. Os nomes devem ser únicos dentro de um índice e não podem começar com nenhuma das seguintes strings:

  • lucene.

  • builtin.

  • mongodb.

sim
charFilters
lista de objetos
Array contendo zero ou mais filtros de caracteres. ConsulteUso do para mais informações.
Não
tokenizer
objeto
Tokenizer para utilizar para criar tokens. Consulte Uso para obter mais informações.
sim
tokenFilters
lista de objetos
Array contendo zero ou mais filtros de token. Consulte Uso para obter mais informações.
Não

Para utilizar um analisador personalizado ao indexar uma coleção, inclua o seguinte em seu campo definição de índice analyzers:

  1. Opcional. Especifique um ou mais filtros de caracteres. Os filtros de caracteres examinam o texto de um caractere de cada vez e executam operações de filtragem.

  2. Obrigatório. Especifique o tokenizador. Um analyzer usa um tokenizador para dividir chunks de texto em grupos, ou tokens, para fins de indexação. Por exemplo, o tokenizador de espaço em branco divide os campos de texto em palavras individuais com base em onde o espaço em branco ocorre.

  3. Opcional. Especifique um ou mais filtros de token. Após a etapa de tokenização, os tokens resultantes podem passar por um ou mais filtros de token. Um filtro de token executa operações como:

    • Stemming, que reduz palavras relacionadas, como "falar", "falou" e "fala" à sua palavra raiz "falar".

    • Redação, remoção de informações confidenciais de documentos públicos.

Observação

O texto passa primeiro por filtros de caracteres, depois por um tokenizador e, em seguida, pelos filtros de token.

As páginas Filtros de caracteres, tokenizadores e filtros de token contêm exemplos de index definitions e exemplos de query para filtros de caracteres, tokenizadores e filtros de token. Esses exemplos usam uma amostra da coleção minutes com os seguintes documentos:

{
"_id": 1,
"page_updated_by": {
"last_name": "AUERBACH",
"first_name": "Siân",
"email": "auerbach@example.com",
"phone": "(123)-456-7890"
},
"title": "The team's weekly meeting",
"message": "try to siGn-In",
"text": {
"en_US": "<head> This page deals with department meetings.</head>",
"sv_FI": "Den här sidan behandlar avdelningsmöten",
"fr_CA": "Cette page traite des réunions de département"
}
}
{
"_id": 2,
"page_updated_by": {
"last_name": "OHRBACH",
"first_name": "Noël",
"email": "ohrbach@example.com",
"phone": "(123) 456 0987"
},
"title": "The check-in with sales team",
"message": "do not forget to SIGN-IN. See ① for details.",
"text" : {
"en_US": "The head of the sales department spoke first.",
"fa_IR": "ابتدا رئیس بخش فروش صحبت کرد",
"sv_FI": "Först talade chefen för försäljningsavdelningen"
}
}
{
"_id": 3,
"page_updated_by": {
"last_name": "LEWINSKY",
"first_name": "Brièle",
"email": "lewinsky@example.com",
"phone": "(123).456.9870"
},
"title": "The regular board meeting",
"message": "try to sign-in",
"text" : {
"en_US": "<body>We'll head out to the conference room by noon.</body>"
}
}
{
"_id": 4,
"page_updated_by": {
"last_name": "LEVINSKI",
"first_name": "François",
"email": "levinski@example.com",
"phone": "123-456-8907"
},
"title": "The daily huddle on tHe StandUpApp2",
"message": "write down your signature or phone №",
"text" : {
"en_US": "<body>This page has been updated with the items on the agenda.</body>" ,
"es_MX": "La página ha sido actualizada con los puntos de la agenda.",
"pl_PL": "Strona została zaktualizowana o punkty porządku obrad."
}
}

O Atlas Search Visual Editor inclui os seguintes analisadores personalizados incorporados com base em um modelo de uso comum para ajudá-lo a começar:

  • Analisador de e-mail - Use-o para tokenizar endereços de e-mail com até 200 caracteres. Por exemplo, você pode aplicar este analisador no campo page_updated_by.email na Coleção de Exemplo.

  • Números de telefone - Use para criar um único token a partir de um número de telefone formatado nos EUA. Por exemplo, você pode aplicar este analisador no campo page_updated_by.phone na Coleção de Exemplo.

  • IDs separados por Dashlane - Use para criar tokens a partir de texto delimitado por hífen. Por exemplo, você pode aplicar este analisador no campo message na Coleção de Exemplo.

Você pode usar esses analisadores personalizados internos ou criar seu próprio analisador personalizado usando o Editor Visual do Atlas Search ou EditorJSON. Para saber mais sobre como criar seus próprios analisadores personalizados, consulte as seguintes páginas:

Observação

Quando você adiciona um analisador personalizado usando o Visual Editor na interface do usuário do Atlas, a interface do usuário do Atlas exibe os seguintes detalhes sobre o analisador na seção Custom Analyzers.

Nome
Etiqueta que identifica o analisador customizado.
Usado em
Campos que usam o analisador customizado. O valor é Nenhum se o analisador customizado não for usado para analisar quaisquer campos.
Filtros de caracteres
Filtros de caracteres do Atlas Search configurados no analisador customizado.
Tokenizador
Tokenizer do Atlas Search configurado no analisador personalizado.
Filtros de token
Filtros de token do Atlas Search configurados no analisador customizado.
Ações

Ícones clicáveis que indicam as ações que você pode executar no analisador customizado.

  • Clique em para editar o analisador customizado.

  • Clique para excluir o analisador customizado.

← Analisador múltiplo