我需要更新或刪除多個文檔。如何用Elasticsearch處理多個更新/刪除?
當我更新我這樣做:
- 我首先搜索的文件,設置返回的結果有較大的限制(比方說,大小:10000)。
- 對於每個返回的文檔,我修改了某些值。
- 我對elasticsearch整個修改列表(bulk index)感到不滿。
此操作發生,直到點1不再返回結果。
當我刪除我這樣做:
- 我首先搜索的文件,設置一個更大的限制返回的結果(比方說,大小:10000)
- 我刪除每一個發現的文件發送到elasticsearch _id document(10000 requests)
此操作重複,直到點1不再返回結果。
這是更新的正確方法嗎?
當我刪除,有沒有辦法,我可以發送幾個ID一次刪除多個文件?
在「按查詢刪除」和「批量刪除」(請參閱@ Tom83的答案)之間,你會推薦什麼?你用過他們兩個嗎? – 2014-09-03 06:54:42
是的,我用過它們兩個。如果您想要刪除文檔ID的離散列表,批量刪除會更有用。如果您有一個查詢標識要刪除的所有文檔,則按查詢刪除會更好。一如既往,使用哪個取決於你的用例。 – 2014-09-03 14:26:10
不確定這是否適用於當前版本的查詢刪除,但對於我所看到的當前通過查詢刪除使用滾動和批量,因此如果您已經有要刪除的id列表,那麼您可能只應使用批量https:/ /www.elastic.co/guide/en/elasticsearch/plugins/2.2/delete-by-query-plugin-reason.html#_new_delete_by_query_implementation – dege 2016-02-08 11:46:52