問題タブ [range-query]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
elasticsearch - 特定のフィルターと組み合わせると、Elasticsearch 範囲クエリの一致が遅くなる
私たちの新しいクラスターがなぜ遅いのかを理解しようとしていて、奇妙なことが見つかりました。
これを実行すると:
プロファイリングを確認すると、「一致」に多くの時間を費やしているようです。
次のクエリを実行すると、別のフィールド (同じマッピング) でフィルター処理され、まったく使用されませんmatch
。
これで、しばらく時間がかかりますadvance
(一致は 0):
root_id
との両方reference_id
が次のようにマッピングされます(少なくとも高速になると思われるため、 にlong
変更されます)。keyword
ここで、2 つのクエリは異なるフィールドでフィルタリングしていますが、同じタイプのフィールドであることに変わりはありません。なぜ最初のクエリで「一致」が遅いのでしょうか? 何か案は?なんとなくわかるかな。また、なぜ「一致」しているのでしょうか。フィルタリングのみを行うので、スコアリングを行う必要はありませんよね?