cnq 发表于 2017-5-20 13:08:02

Elasticsearch删除所有数据

  项目中碰到一个elasticsearch的purge需求,就是说在不删除index和type的前提下,清除其中的所有数据。
  用es的delete by query api可以做到,尽管官方声明deprecated in 1.5.3,但是经过测试1.8还是可以用的(真不敢想象要是不能用了怎么办。。。连个purge的api都没有。。),语法如下:
  DELETE /<index>/<type>/_query -d '{
  "query" : { 
  "match_all" : {}
  }
  }'
  简单来说就是根据查询条件查出所有符合条件的数据然后删掉,然后传入的查询条件是match_all。
  注意DELETE /<index>/* 也可以删除所有数据,但相应的mapping也都没了,还不如重建索引。
页: [1]
查看完整版本: Elasticsearch删除所有数据