Docs Menu
Docs Home
/ /

Procese datos con analizadores

Puede controlar cómo MongoDB Search convierte una string El contenido de un campo se convierte en términos de búsqueda mediante analizadores. Los analizadores son políticas que combinan un tokenizador, que extrae tokens del texto, con los filtros que usted define. MongoDB Search aplica sus filtros a los tokens para crear términos indexables que corrigen diferencias en puntuación, mayúsculas, palabras de relleno, etc.

Puede especificar analizadores en su definición de índice para que MongoDB Search los use al crear un índice o buscar en su base de datos. También puede especificar analizadores alternativos (múltiples) para usar al indexar campos individuales, o defina sus propios analizadores personalizados.

Las siguientes pestañas muestran la sintaxis de las opciones del analizador que puedes configurar en tu definición de índice:

Puede especificar un analizador de índice para MongoDB Search que se aplique a los campos de string al crear un índice con la opción analyzer en su definición de índice de MongoDB Search.

MongoDB Search aplica el analizador de nivel superior a todos los campos de la definición de índice, a menos que se especifique un analizador diferente para un campo dentro de la definición mappings.fields para su campo.

Si se omite la opción analyzer, por defecto, MongoDB Search utilizará el analizador estándar.

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}

Puede especificar un analizador de búsquedas para que MongoDB Search lo aplique al texto de la query con la opción searchAnalyzer en la definición del índice de MongoDB Search.

Si se omite la opción searchAnalyzer, por defecto, MongoDB Search utilizará el analizador que se especifique para la opción analyzer. Si se omiten ambas opciones, MongoDB Search usará por defecto el analizador estándar.

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

Puede especificar un analizador alternativo para que MongoDB Search lo aplique a los campos de string al crear un índice con la opción multi en su definición de índice de MongoDB Search.

Para usar el analizador alternativo en una consulta de MongoDB Search, se debe especificar el nombre del analizador alternativo en el campo multi de la ruta del query del operador del query.

Para obtener más información, consulte Multianalizador.

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}

Puede definir uno o más analizadores personalizados para transformar, filtrar y agrupar secuencias de caracteres con la opción analyzers en el índice de MongoDB Search.

Para utilizar un analizador personalizado que definas, especifica tu valor name en la opción analyzer, searchAnalyzer o multi.analyzer de tu definición de índice.

Para obtener más información, consulta Analizadores 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}

Tip

Aprende observando

En este video, puede ver cómo MongoDB Search utiliza los analizadores para dividir los documentos en unidades de búsqueda y compilar un índice invertido.

Duración: 8 minutos

MongoDB Search proporciona los siguientes analizadores integrados:

Analizador
Descripción

Utiliza el analizador por defecto para todos los índices y queries de MongoDB Search.

Divide el texto en términos buscables siempre que encuentre un carácter que no sea una letra.

Divide el texto en términos que se pueden buscar siempre que encuentres un espacio en blanco.

Indexa los campos de texto como términos individuales.

Proporciona un conjunto de analizadores de texto específicos para cada lenguaje.

Si no especificas un analizador en la definición de tu índice, MongoDB usa el analizador estándar por defecto.

Los normalizadores producen un solo token al final del análisis. Puede configurar normalizadores solo en la definición de campo para el tipo de token de MongoDB Search. MongoDB Search proporciona los siguientes normalizadores:

Normalizador
Descripción

lowercase

Transforma el texto de los campos de string en minúsculas y crea un único token para toda la string.

none

No realiza ninguna transformación, pero aun así crea un único token.

Para obtener más información sobre los analizadores, consulte Análisis de analizadores para crear el índice de búsqueda adecuado para su aplicación en el Centro para desarrolladores de MongoDB.

Volver

Referencia del índice

En esta página