“O cache é o recurso mais básico e poderoso quando você precisa melhorar a velocidade da busca de dados de várias fontes. O cache sempre se manterá, seja aplicativos que leem dados do banco de dados ou vários dutos escrevendo dados para uma fonte específica.
Embora o cache desempenhe um papel vital na recuperação de dados, isso pode levar a erros se o resultado incorreto for armazenado no cache. Isso pode levar aos aplicativos que acessam os dados do cache que recebem resultados falsos.
Portanto, este tutorial mostrará como você pode limpar o cache do seu cluster Elasticsearch usando vários pontos de extremidade da API.”
Vamos lá, vamos?
Elasticsearch Cache Tipos
Elasticsearch suporta três tipos principais de cache:
Cache de consulta do nó
O cache de consulta do nó é um cache LRU acessível por todos os fragmentos em um determinado nó. Este tipo de cache armazena os resultados das consultas usadas no contexto do filtro. Elasticsearch removerá os resultados em cache com base nos valores menos usados (LRU).
Cache de dados do shard
Este tipo de cache é específico. Assim como o cache de consulta de nó, o cache de dados do shard usa o modo de despejo da LRU. Além disso, esse tipo de cache armazena os resultados de consultas de acesso frequentemente.
Cache de dados de campo
O cache de dados de campo, por outro lado, é usado para operações de classificação e agregação. Isso permite que o Elasticsearch execute essas operações rapidamente e salve memória.
Nota: Lembre -se de que o Elasticsearch configura e gerencia as regras de cache internamente. Portanto, você raramente precisará alterar as regras de cache manualmente.
Elasticsearch Clear Cache API
Como a maioria das operações no Elasticsearch, usamos um endpoint da API para executar operações de descarga de cache.
A sintaxe da solicitação é como mostrado:
POST /_CACHE /CLEAR
Antes de usar este endpoint da API, verifique se você tem os privilégios de gerenciamento no índice de destino, fluxo de dados ou alias.
Exemplo 1- Elasticsearch Clear Cache específico Tipo de cache
O exemplo abaixo ilustra como limpar um tipo de cache específico. Os tipos de cache suportados incluem:
Por exemplo, para limpar o cache do FieldData, execute:
Curl -xpost "http: // localhost: 9200/_cache/clear?fieldData = true "-h" kbn -xsrf: relatórios "
Você deve obter uma saída como mostrado:
"_shards":
"Total": 10,
"bem -sucedido": 10,
"falhou": 0
Para limpar o cache da consulta, execute:
Curl -xpost "http: // localhost: 9200/_cache/clear?Query = True "-h" KBN -XSRF: Relatórios "
Saída resultante:
"_shards":
"Total": 10,
"bem -sucedido": 10,
"falhou": 0
Finalmente, para limpar o cache do pedido, execute a consulta:
Curl -xpost "http: // localhost: 9200/_cache/clear?request = true "-h" kbn -xsrf: relatórios "
Saída:
"_shards":
"Total": 10,
"bem -sucedido": 10,
"falhou": 0
Exemplo 2 - cache limpo para índice específico
Em vez de limpar o cache para todos os fluxos de dados e indicios usando a API _cache/clear, você pode especificar um índice específico que deseja limpar, conforme mostrado na sintaxe abaixo:
PUBLICAR //_cache/clear
Onde o alvo representa o nome do índice que você deseja usar.
Por exemplo, para limpar o cache de consulta no índice de terremotos, podemos executar:
Curl -xpost "http: // localhost: 9200/terremoto/_cache/clear?request = true "-h" kbn -xsrf: relatórios "
A saída resultante é como mostrado:
"_shards":
"Total": 2,
"bem -sucedido": 2,
"falhou": 0
Exemplo 3 - Cache limpo para campos específicos
Para remover apenas o cache para campos específicos em um determinado índice, você pode usar o parâmetro Fields e especificar os campos cujo cache você deseja limpar como valores separados por vírgula.
Por exemplo, no índice de terremotos, temos campos como latitude, magnitude, longitude, etc.
Para limpar o cache desses campos, podemos executar:
Curl -xpost "http: // localhost: 9200/terremoto/_cache/clear?campos = latitude, magnitude, longitude "-h" kbn -xsrf: relatórios "
A solicitação acima deve limpar o cache dos campos especificados e retornar um exemplo de saída como mostrado:
"_shards":
"Total": 2,
"bem -sucedido": 2,
"falhou": 0
Fechamento
Viva. Neste artigo, você aprende sobre Elasticsearch Cache, vários tipos de cache em Elasticsearch e muito mais. Você também descobriu como poderia limpar o cache para um índice de pesquisa de elasticidade, limpar tipos específicos de cache, o cache claro para campos específicos e mais.
Fique atento para mais!