Eu sou novo no ElasticSearch . Estou tentando descobrir como remover dados do ElasticSearch. Eu apaguei meus índices. No entanto, isso não parece realmente remover os dados em si. As outras coisas que vi apontam para o recurso Excluir por consulta . No entanto, nem tenho certeza do que consultar. Eu conheço meus índices. Essencialmente, eu gostaria de descobrir como fazer um
DELETE FROM [Index]
Do PostMan no Chrome. No entanto, não estou tendo sorte. Parece que não importa o que eu faça, os dados ficam por aí. Até o momento, excluii com êxito os índices usando o DELETE HTTP Verb no PostMan e usando um URL como:
http://localhost:9200/[indexName]
No entanto, isso não parece realmente remover os dados (também conhecidos como documentos).
elasticsearch
user687554
fonte
fonte
Respostas:
Você pode excluir usando
cURL
ou visualmente uma das muitas ferramentas criadas por entusiastas de código aberto para o Elasticsearch.Usando cURL
por exemplo
Você receberá uma resposta sobre se isso foi bem-sucedido ou não. Você pode excluir um índice ou tipos inteiros com um índice também, excluir um tipo deixando de fora o ID do documento da seguinte forma:
Se você deseja excluir um índice -
Se você deseja excluir mais de um índice que segue uma determinada convenção de nomenclatura (observe
*
um curinga), -Visualmente
Existem várias ferramentas, como mencionado acima, não as listarei aqui, mas irei vinculá-lo a uma que permita que você comece imediatamente, localizado aqui . Essa ferramenta é chamada KOPF. Para conectar-se ao seu host, clique no logotipo no canto superior esquerdo e digite o URL do seu cluster.
Uma vez conectado, você poderá administrar todo o cluster, excluir, otimizar e ajustar o cluster.
fonte
Se você precisar excluir todos os índices, isso pode ser útil:
Powershell:
fonte
A documentação (ou o Guia definitivo ) diz que você também pode usar a próxima consulta para excluir todos os índices:
E há uma observação importante:
fonte
Você precisa enviar uma
DELETE
solicitação paraVocê também pode excluir um único documento:
Eu sugiro que você use martelo elástico .
Após a exclusão, você pode procurar se o índice ainda existe com o seguinte URL:
http://[your_host]:9200/_stats/
Boa sorte!
fonte
A exclusão do índice excluirá o mapeamento e o tipo along. você pode excluir todas as linhas pela seguinte consulta
No entanto, para a consulta acima, você precisa instalar o plug-in excluir por consulta a partir do 2.0.0-beta1 do Elasticsearch, a exclusão por consulta foi removida da API principal
Para mais
http://blog.appliedinformaticsinc.com/how-to-delete-elasticsearch-data-records-by-dsl-query/
fonte
fonte
Mude
http
parahttps
se você estiver usando o certificado SSL em seu aplicativofonte
Você pode excluir um índice em python da seguinte maneira
fonte
maneira mais simples!
onde
twitter
está o índice na pesquisa elásticaref; https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html
fonte
Para exclusão em massa por consulta, você pode usar a API especial de exclusão por consulta :
No histórico, a API foi excluída e reintroduzida novamente
Quem interessante tem longa história.
fonte
Eu queria excluir o índice do logstash e pesquisar muito sobre diferentes ferramentas como o curl. Mas encontrou a solução no final. Entre no Kibana. Vá para a guia Dev Tools, digite o
DELETE /logstash-*
campo de consulta e pressione o botão de seta verde. se você for "reconhecido": true em resposta, significa que os dados foram limpos.fonte
Para listar os índices
curl -L localhost:9200/_cat/indices
9200
porta padrão [altere a porta se estiver usando outra porta]Você provavelmente encontrará todos os índices começando com
logstash-yyyy-mm-dd
formato (logstash- *)Você pode ver todos os índices e usar
Para excluir os índices e gatilhos de dados, siga o comando.
curl -XDELETE localhost:9200/index_name
(O que removerá os dados e os índices).fonte
Há muitas boas respostas aqui, mas há também algo que eu gostaria de adicionar:
fonte
Você pode excluir o índice inteiro, o tipo de documento ou os dados de identificação perticular. estas são as três maneiras:
curl -XDELETE localhost: 9200 / index_name
curl -XDELETE localhost: 9200 / index_name / doc-type
curl -XDELETE localhost: 9200 / index_name / doc-type / documentId
e se você deseja excluir todo o índice, vá para o curinga.
fonte
Você também pode excluir o índice usando a ação DELETE em 'elasticsearch head' ( plug-in do Chrome ). Adicione-o ao seu chrome e conecte-o ao seu host. Lá você encontrará todos os seus índices e, se clicar no botão de ações abaixo do índice que deseja excluir, encontrará uma opção DELETE no menu suspenso. clique nele e digite DELETE no pop-up. Seu índice será excluído. A extensão 'Elasticsearch head' é uma maneira fácil de visualizar e gerenciar seus índices e dados.
fonte
Você pode usar a extensão chrome elasticsearch-head para excluir o índice
fonte
Você pode excluir o índice pelo Kibana Console:
Para obter todo o índice:
Para excluir um índice específico:
fonte
Você pode excluir um ou mais índices, o que realmente exclui seus arquivos do disco . Por exemplo:
Onde
$INDEXNAME
pode haver um nome de índice (por exemplousers_v2
), N índices separados por vírgula (por exemplousers_v2,users_v3
). Um padrão de índice (por exemplousers_*
) ou_all
também funciona, a menos que esteja bloqueado na configuração viaaction.destructive_requires_name: true
.É possível excluir documentos individuais, mas isso não será eliminado imediatamente . Uma exclusão é apenas uma exclusão virtual e os documentos são realmente removidos durante a mesclagem de segmentos . Você encontrará muitos detalhes sobre segmentos e mesclagens nesta apresentação . É sobre o Solr, mas as mesclagens são do Lucene, então você tem as mesmas opções no Elasticsearch.
De volta à API, é possível excluir documentos individuais por ID (forneça um valor de roteamento se você indexar com roteamento):
Ou por consulta:
fonte
Digamos que eu precise excluir um índice
filebeat-7.6.2-2020.04.30-000001
e o executei usando uma opção curl DELETE (curl -X DELETE "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
) e resulte em um problema de autenticação, conforme abaixo;Aqui, você deve autenticar a solicitação de ondulação usando o nome de usuário e a senha que você forneceu para o Elasticsearch. Tente então
curl -X DELETE -u myelasticuser:myelasticpassword "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
resultará em {"reconhecido": verdadeiro} .
fonte