Elasticsearch te permite indexar datos de manera rápida y flexible. Pruébalo gratis en el cloud o ejecútalo localmente para ver lo fácil que puede ser indexar.
En este artículo, hablaremos de cómo mostrar campos en un índice de Elasticsearch. Esto puede ser útil para entender la estructura de tus datos, identificar campos específicos y solucionar problemas. Vamos a tratar los siguientes temas:
- Uso de la API
_mappingpara recuperar información de campo - Uso de la API
_searchpara mostrar los valores de los campos - Filtrado de campos usando el parámetrofields
- Visualización de campos anidados
1. Uso de la API _mapping para recuperar información de campo
La API _mapping permite recuperar la definición de mapeo para un índice o varios índices. Esto incluye información sobre los campos, sus tipos de datos y otras propiedades. Para recuperar el mapeo de un índice específico, emplee la siguiente petición:
Por ejemplo, si tienes un índice llamado my_index, puedes recuperar su mapeo con la siguiente petición:
La respuesta incluirá la definición de mapeo para el índice, que contiene información sobre los campos y sus propiedades.
También es posible recuperar el mapeo de un campo específico. Esto puede ser útil si tu mapeo es bastante grande y solo quieres centrarte en un campo específico. Para recuperar el mapeo de un campo específico, emplee la siguiente petición:
También puedes recuperar los mapeos de varios campos separando sus nombres con comas, como en la siguiente petición:
2. Uso de la API _search para mostrar los valores de los campos
Para mostrar los valores de los campos en un índice de Elasticsearch, puedes usar la API _search . Por defecto, la API _search devuelve el campo _source , que contiene el documento JSON original que se indexó. Para mostrar solo campos específicos, puedes usar el parámetro _source en la solicitud de búsqueda.
Aquí tienes un ejemplo de una solicitud de búsqueda que devuelve los valores de los campos title y author para documentos en el índice my_index :
En este ejemplo, el parámetro _source especifica los campos que se deben devolver.
3. Filtrado de campos usando el parámetro de campos
También puedes usar el parámetro fields para filtrar los campos que aparecen en la respuesta de búsqueda. Esto puede ser útil si solo necesitas campos específicos y quieres reducir el tamaño de la respuesta. El parámetro fields acepta una matriz de nombres de campos o patrones comodines.
Por ejemplo, para devolver solo los campos title y author de los documentos en el índice de my_index , puedes usar la siguiente solicitud de búsqueda:
Ten en cuenta que el parámetro _source está configurado como falso para no devolver el documento fuente.
Para devolver todos los campos con un text tipo de dato, puedes usar un patrón comodín como este:
4. Visualización de campos anidados
Si tu índice contiene campos anidados, puedes usar la notación de puntos para especificar el camino de campo anidado en el parámetro fields . Por ejemplo, si tienes un campo anidado llamado address.city, puedes incluirlo en la respuesta de búsqueda así:
En este ejemplo, la respuesta de búsqueda incluirá los valores de los campos title, author address.city .
Conclusión
En conclusión, se puede lograr mostrar campos en un índice de Elasticsearch empleando la API _mapping para recuperar información de campos y la API _search para mostrar los valores de campo. Puedes filtrar los campos que aparecen en la respuesta de búsqueda usando los parámetros de _source o fields y mostrar los campos anidados usando la notación de puntos. Estas técnicas pueden ayudarte a entender la estructura de tus datos, identificar campos específicos y solucionar problemas.




