2017-06-02 73 views
1

我有一些自定義的數據(我們稱之爲相機)在我ElasticSearch,該數據在Kibana表現就像是與JEST

enter image description here

刪除ElasticSearch通過查詢,並根據我試圖通過查詢刪除數據本文ElasticSearch Delete by Query在接受的答案,我的代碼是這樣

String query = "{\"Name\":\"test Added into Es\"}"; 
DeleteByQuery delete = new DeleteByQuery.Builder(query).addIndex(this._IndexName).addType(this._TypeName).build(); 

JestResult deleteResult = this._JestClient.execute(delete); 

,其結果是404未找到

其明顯的存在着ElasticSearch 一個相機數據,名稱匹配的查詢,所以我相信是由其他原因引起的。

我做錯了什麼?我應該改變查詢字符串嗎?

回答

1

查詢必須是一個真正的查詢,而不是一個子文件

嘗試用這個代替

String query = "{\"query\": { \"match\": {\"Name\":\"test Added into Es\"}}}"; 
+0

謝謝!但結果是一樣的... – Alanight

+0

你能分享完整的錯誤嗎?以及你正在使用哪個版本的ES – Val

+0

當然!全部內容是這個「{」found「:false,」_ index「:」cameras「,」_ type「:」camera「,」_ id「:」_ query「,」_ version「:1,」result「:」not_found「 , 「_碎片」:{ 「總」:2, 「成功」:1, 「失敗」:0}}'。我正在使用ElasticSearch 5.4.0。 – Alanight