“El almacenamiento en caché es la característica más básica y potente cuando necesita mejorar la velocidad de la obtención de datos de varias fuentes. El almacenamiento en caché siempre se mantendrá, ya sea aplicaciones que lean datos de la base de datos o de múltiples tuberías que escriben datos a una fuente específica.
Aunque el almacenamiento en caché juega un papel vital en la recuperación de datos, puede conducir a errores si el resultado incorrecto se almacena en el caché. Esto puede llevar a las aplicaciones que acceden a los datos desde el caché que reciben resultados falsos.
Por lo tanto, este tutorial le mostrará cómo puede borrar el caché de su clúster Elasticsearch utilizando varios puntos finales de API."
Vamos a hacerlo, ¿?
Tipos de caché de elasticsearch
Elasticsearch admite tres tipos principales de caché:
Caché de la consulta de nodo
El caché de consulta de nodo es un caché LRU accesible por todos los fragmentos en un nodo dado. Este tipo de caché almacena los resultados de las consultas utilizadas en el contexto del filtro. Elasticsearch eliminará los resultados en caché en función de los valores menos utilizados (LRU).
Caché de datos de fragmentos
Este tipo de caché se alcanza de fragmentos por escolar. Al igual que el caché de consulta de nodo, el caché de datos de fragmentos utiliza el modo de desalojo LRU. Además, este tipo de caché almacena los resultados de las consultas de acceso frecuentemente.
Caché de datos de campo
El caché de datos de campo, por otro lado, se utiliza para las operaciones de clasificación y agregación. Esto permite a ElasticSearch realizar estas operaciones rápidamente y guardar memoria.
Nota: Tenga en cuenta que Elasticsearch configura y administra las reglas de almacenamiento en caché internamente. Por lo tanto, rara vez necesitará alterar las reglas de almacenamiento en caché manualmente.
Elasticsearch Clear Cache API
Como la mayoría de las operaciones en ElasticSearch, utilizamos un punto final API para realizar operaciones de descarga de caché.
La sintaxis de la solicitud es como se muestra:
Post /_cache /claro
Antes de usar este punto final API, asegúrese de tener los privilegios de administración en el índice de destino, la secuencia de datos o el alias.
Ejemplo 1- Elasticsearch Borrar tipo de caché específico
El siguiente ejemplo ilustra cómo borrar un tipo de caché específico. Los tipos de caché compatibles incluyen:
Por ejemplo, para borrar el caché FieldData, ejecute:
curl -xpost "http: // localhost: 9200/_cache/clear?fieldData = true "-h" kbn -xsrf: informes "
Debe obtener una salida como se muestra:
"_shards":
"Total": 10,
"exitoso": 10,
"Falló": 0
Para borrar el caché de consulta, ejecute:
curl -xpost "http: // localhost: 9200/_cache/clear?consulta = true "-h" kbn -xsrf: informes "
Salida resultante:
"_shards":
"Total": 10,
"exitoso": 10,
"Falló": 0
Finalmente, para borrar el caché de solicitud, ejecute la consulta:
curl -xpost "http: // localhost: 9200/_cache/clear?request = true "-h" kbn -xsrf: informes "
Producción:
"_shards":
"Total": 10,
"exitoso": 10,
"Falló": 0
Ejemplo 2 - Borrar caché para un índice específico
En lugar de borrar el caché para todos los flujos de datos e indicias utilizando la API _cache/Clear, puede especificar un índice específico que desea borrar, como se muestra en la sintaxis a continuación:
CORREO //_cache/claro
Donde el objetivo representa el nombre del índice que desea usar.
Por ejemplo, para borrar el caché de consulta en el índice de terremoto, podemos ejecutar:
curl -xpost "http: // localhost: 9200/terremoto/_cache/claro?request = true "-h" kbn -xsrf: informes "
La salida resultante es como se muestra:
"_shards":
"Total": 2,
"exitoso": 2,
"Falló": 0
Ejemplo 3: borrar el caché para campos específicos
Para eliminar solo el caché para campos específicos en un índice dado, puede usar el parámetro de campos y especificar los campos cuyo caché desea borrar como valores separados por comas.
Por ejemplo, en el índice de terremotos, tenemos campos como latitud, magnitud, longitud, etc.
Para borrar el caché de estos campos, podemos ejecutar:
curl -xpost "http: // localhost: 9200/terremoto/_cache/claro?campos = latitud, magnitud, longitud "-h" kbn -xsrf: informes "
La solicitud anterior debe borrar el caché para los campos especificados y devolver una salida de ejemplo como se muestra:
"_shards":
"Total": 2,
"exitoso": 2,
"Falló": 0
Clausura
Rudón. En este artículo, aprende sobre Elasticsearch Cache, varios tipos de caché en Elasticsearch y más. También descubrió cómo podría borrar el caché para un índice de elasticsearch, borrar tipos de caché específicos, el caché de claro para campos particulares y más.
Mantente sintonizado para más!