【问题标题】:ElasticSearch Delete bulk itemsElasticSearch 删除批量项
【发布时间】:2014-12-01 17:34:49
【问题描述】:

我想删除某种类型的所有文档。

但这仅适用于 1.0 及更高版本:

curl -XDELETE 'http://localhost:9200/index/type/_query?pretty' -d 
'{
    "query" : {
        "bool" : {
            "must" : [
                {
                    "match_all" : {} 
                } 
            ] 
        } 
    }
}'

我在 ES v1.4.x 上试过这个,效果很好。当我在 ES v0.90.13 上运行时它失败了。 任何帮助,将不胜感激。

【问题讨论】:

    标签: javascript curl elasticsearch elasticsearch-bulk-api


    【解决方案1】:

    从文档看来,对于 elasticsearch 版本 0.90x,delete by query 不应嵌套在查询词中:

    即上面的查询应该如下:

    curl -XDELETE 'http://localhost:9200/index/type/_query?pretty' -d 
    '{
            "bool" : {
                "must" : [
                    {
                        "match_all" : {} 
                    } 
                ] 
            } 
      }'
    

    但是对于版本 1.X 文档确实提到,对于 delete by query,查询应该嵌套在类似于搜索 api 的查询中。

    这在1.0 release的重大更改中提到

    【讨论】:

      猜你喜欢
      • 2013-07-08
      • 1970-01-01
      • 2017-10-28
      • 1970-01-01
      • 1970-01-01
      • 2016-05-07
      • 1970-01-01
      • 2019-08-26
      • 1970-01-01
      相关资源
      最近更新 更多