Code Bye

elasticsearch2.1删除索引数据的问题

现在本人用的2.1版本的,使用的java客户端。
想要实现,根据index和type来删除索引数据,就是删除一个索引下同一个type下的全部索引数据。
本人网上找了下以前的版本都有deleteByQuery(),prepareDeleteByQuery()等方法可以实现,
但是现在2.1的版本好像只能通过index、type、id三个变量来删除。
求帮助解决办法?
(没分了,别介意,全部查出数据在根据id删,这个不好)
解决方案

20

本人也在找这个,后来,本人去看了1.7的文档。
发现 1.7是最后 有这个方法的。
1.7之后 jdk  就删掉了。
原因是 他会 强制刷新 然后会是内存 溢出什么什么的。
地址 在这里:
https://www.elastic.co/guide/en/elasticsearch/client/java-api/1.7/delete-by-query.html
最终答案就是
use the scroll/scan API to find all matching ids and then issue a bulk request to delete them..
本人没翻译错误的话。是用  scroll 去找,然后再批量删除。
天哪。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明elasticsearch2.1删除索引数据的问题