簡體   English   中英

如何在Elasticsearch中刪除特定索引中的多個數據

[英]How can I delete multiple data in specific index in elasticsearch

我需要刪除指定索引/類型的多條記錄。 我遵循這份文件,直到我遇到同樣的問題

我需要刪除g_visitor索引中gvisitor類型的所有文檔,我遵循以下命令

curl -XDELETE http://10.1.2.10:9200/g_visitor/gvisitor

其拋出錯誤以下

No handler found for uri [/g_visitor/gvisitor] and method [DELETE]

然后按照以下步驟安裝“ 按查詢刪除”插件並嘗試刪除文檔,

curl -XDELETE 'http://10.1.2.10:9200/g_visitor/gvisitor/_delete_by_query?conflicts=proceed' -d '{
    "query" : { 
        "match_all" : {}
    }
}'

它拋出以下錯誤:

  {
     "found":false,
     "_index":"g_visitor",
     "_type":"gvisitor",
     "_id":"_delete_by_query",
     "_version":1,
     "_shards":{
        "total":2,
        "successful":1,
        "failed":0
     }
  }

建議我,如何在Elasticsearch中刪除特定索引類型的多個或所有文檔。

您無法刪除映射類型,因此為什么您的第一個查詢不起作用。

您只能刪除索引

curl -XDELETE http://10.1.2.10:9200/g_visitor

如果要使用按查詢刪除的方法,可以這樣做,但是需要首先安裝插件。

sudo bin/plugin install delete-by-query

然后,您可以通過調用_query端點(而不是_delete_by_query !!)來使用此類插件:

curl -XDELETE 'http://10.1.2.10:9200/g_visitor/gvisitor/_query?conflicts=proceed' -d '{
    "query" : { 
        "match_all" : {}
    }
}'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM