本节书摘来华章计算机《深入理解Elasticsearch(原书第2版)》一书中的第2章 ,第2.1节,[美]拉斐尔·酷奇(Rafal Ku) 马雷克·罗戈任斯基(Marek Rogoziski)著 张世武 余洪淼 商旦 译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
第2章
查询DSL进阶
在上一章,我们了解了什么是Apache Lucene,它的整体架构,以及文本分析过程是如何完成的。之后,我们还介绍了Lucene的查询语言及其用法。除此之外,我们也讨论了Elasticsearch,讨论了它的架构,以及一些核心概念。在本章,我们将深入研究Elasticsearch的查询DSL(Domain Specific Language)。在了解那些高级查询之前,我们将先了解Lucene评分公式的工作原理。到本章结束,将涵盖以下内容:
- Lucene默认评分公式是如何工作的
- 什么是查询重写
- 什么是查询模板以及如何使用查询模板
- 如何优化复杂的Boolean查询
- 复杂Boolean查询的性能奥秘
- 如何为特定场景选择合适的查询类型