查询 DSL
编辑查询 DSL编辑
Elasticsearch 提供了一个基于 JSON 的完整查询 DSL(领域特定语言)来定义查询。可以将查询 DSL 视为查询的 AST(抽象语法树),它由两种类型的子句组成
查询子句的行为取决于它们是在 查询上下文还是过滤上下文 中使用。
- 允许昂贵的查询
-
某些类型的查询通常由于其实现方式而执行缓慢,这会影响集群的稳定性。这些查询可以归类如下
-
需要进行线性扫描以识别匹配项的查询
-
具有高前期成本的查询
- 连接查询
-
可能具有高每文档成本的查询
-
可以通过将 search.allow_expensive_queries
设置的值设置为 false
(默认为 true
)来阻止执行此类查询。