2016-09-08 2 views
2

私は弾性検索のためにdelete by queryプラグインを使用しています。弾性検索:削除する多くの文書でクエリによる削除が実際に遅い

私はインデックスと整数フィールドsizeを持っています。私はサイズ10のすべての文書を削除したい。サイズ10の文書が5000以上ある。

DELETE /products/product/_query?q=size:10 

このクエリは2分以上かかる。

delete by queryプラグインはdocumentationから、遅いので、私は理解して:

内部的には、それは 効率的かつ安全な方法で文書を削除するためにスクロールして、バルクのAPIを使用しています。より遅い[..]多数の文書に一致するクエリは、すべての文書を個別に削除する必要があるため、長い時間実行される可能性があります。

文書を一番速く削除する方法を教えてください。

+0

できません。これは、Elasticsearchの最新バージョンでドキュメントを削除する唯一のサポートされている方法です。 Elasticsearch 1.xははるかに速く削除します(しかし、潜在的に安全でない方法で)。だからそれが本当に価値があるなら、あなたは古いバージョンのElasticsearchに戻ることができます。 – bittusarkar

+0

ok、ありがとう!私はこれが質問の答えであり、コメントではないと思います... – ar099968

+1

答えとして投稿してください。 – bittusarkar

答えて

3

できません。これは、Elasticsearchの最新バージョンでドキュメントを削除する唯一のサポートされている方法です。 Elasticsearch 1.xははるかに速く削除します(しかし、潜在的に安全でない方法で)。だからそれが本当に価値があるなら、あなたは古いバージョンのElasticsearchに戻ることができます。

関連する問題