弹性搜索头插件 - 删除索引中的所有记录

时间:2015-08-08 17:45:02

标签: elasticsearch elasticsearch-plugin

有人可以指点一下如何使用弹性搜索的头部插件删除索引的所有记录吗?

我们通常做的是形成像

这样的查询

http://ElasticSearchServerURL/entities/entityName/uniqueIdentifierOfRecord

然后从GET / PUT / POST / DELETE下拉列表中选择DELETE。

现在我要删除特定entityName的所有记录。

我尝试引用Elastic search delete operationhttps://www.elastic.co/guide/en/elasticsearch/guide/current/_deleting_an_index.html但这些并不能解决我的问题,因为这不是我们在Head插件中执行此操作的方式。 我也试图找到文档,但我发现的只是一些卷曲查询,我再也不知道如何使用。

任何指针都会有很大的帮助。

2 个答案:

答案 0 :(得分:1)

我希望您了解curl或ES Marvel执行REST操作的意义

以下命令将删除索引中的所有数据和映射

 DELETE /<index-name>/

如果您想删除包括ES创建的元数据在内的所有数据

DELETE /_all

如果您只想删除数据而不删除有关索引的映射和其他元信息

 DELETE <index-name/_query
 {
       "query": {
                "match_all" : {}
        }
 }

答案 1 :(得分:0)

我经常使用的一种方法是快速使用delete by query API

/head/插件的位置字段中,您可以输入以下内容

`/entities/entityName/_query?q=*`

然后从下拉列表中选择DELETE HTTP方法,然后单击“请求”按钮。瞧。

这种方法的唯一缺点是它自ES 1.5.3以来已被弃用,并且将在ES 2.0中被删除,但在此之前它仍然可以偶尔用于您的开发需求。