Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Cómo buscar datos no alfabéticos como cadenas

Este tutorial demuestra cómo ejecutar consultas específicas de cadenas en campos que no son cadenas, convirtiendo los campos a cadenas y almacenándolos en un vista materializada. La vista materializada permite usar operadores específicos de cadena para consultar los campos convertidos y mantener los datos originales intactos en la colección de origen.

Este tutorial sigue estos pasos:

Antes de comenzar, asegúrese de que su clúster cumpla con los requisitos descritos en los prerrequisitos.

This section demonstrates how to create a materialized view named airbnb-mat-view on the sample_airbnb.listingsAndReviews collection. This view stores various numeric and date fields from the source collection as string fields.

To run the queries in the Run Queries on the Converted Fields stage of this tutorial, you need to create MongoDB Search indexes on the converted string fields in your airbnb_mat_view materialized view.

The following JSON definitions define MongoDB Search indexes on the airbnb_mat_view materialized view. You can use dynamic or static mappings to specify which fields you want to index in your collection, depending on the type of queries you want to run. To learn more about field mappings or MongoDB Search index syntax, see Define Field Mappings for a MongoDB Search Index or Index Reference, respectively.

La siguiente definición de índice de búsqueda JSON MongoDB Search utiliza mapeos dinámicos para indexar los campos en la vista materializada. Puedes utilizar este índice para ejecutar consultas usando el operador queryString.

No puedes ejecutar consultas usando el operador de autocompletado en campos indexados dinámicamente.

{
"mappings": {
"dynamic": true
}
}

La siguiente definición de índice JSON MongoDB Search utiliza mapeos estáticos para indexar los campos en la vista materializada como el tipo de autocompletado. Puedes usar este índice para ejecutar consultas utilizando el operador de autocompletado.

No puedes ejecutar consultas utilizando el operador queryString en campos indexados como tipo autocomplete.

{
"mappings": {
"dynamic": false,
"fields": {
"accommodatesNumber": [
{
"dynamic": true,
"type": "document"
},
{
"minGrams": 1,
"type": "autocomplete"
}
],
"lastScrapedDate": [
{
"dynamic": true,
"type": "document"
},
{
"type": "autocomplete"
}
],
"maximumNumberOfNights": [
{
"dynamic": true,
"type": "document"
},
{
"minGrams": 1,
"type": "autocomplete"
}
]
}
}
}

Para aprender cómo crear los índices definidos anteriormente usando tu interfaz preferida, consulta Clientes compatibles.

Se pueden ejecutar consultas sobre los campos numéricos y de fecha que se convirtieron en cadenas. Este tutorial utiliza los operadores queryString y autocompletar para buscar propiedades. La consulta utiliza las siguientes etapas de la pipeline:

  • $search escenario para buscar en la colección

  • $limit stage to limit the output to 5 results

  • $project etapa que se debe excluir _id

En esta sección, te conectas a tu clúster y ejecutas las consultas de muestra utilizando el operador sobre los campos en la colección airbnb_mat_view.

Nota

No puedes realizar consultas cercanas o de rango en los campos de fecha y número que se convirtieron a cadenas en tu vista materializada.

The following procedure runs queryString queries against the converted fields. Use the index that you created with dynamic mappings.

The following procedure runs autocomplete queries against the converted fields. Use the index that you created with static mappings.