《深入理解Elasticsearch(原书第2版)》——导读

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介:


image

前  言

欢迎来到Elasticsearch的世界并阅读本书第2版。通过阅读本书,我们将带领你接触与Elasticsearch紧密相关的各种话题。请注意,本书不是为初学者写的。笔者将本书作为《Elasticsearch Server, Second Edition》的续作和姊妹篇。相对于《Elasticsearch Server》,本书涵盖了很多新知识,不过你偶尔也可以在本书中发现一些引自《Elasticsearch Server》的内容。

本书将探讨与Elasticsearch和Lucene相关的多个不同主题。首先,我们以介绍Lucene和Elasticsearch的基本概念作为开始,带领读者认识Elasticsearch提供的众多查询方式。在这里,将涉及和查询相关的不同主题,比如结果过滤以及如何为特定场景选择合适的查询方式。显然,Elasticsearch不仅仅只有查询功能。因此,本书还将介绍Elasticsearch新加入的聚集功能,以及众多能够赋予被索引数据意义的特性,并设法提供更佳的用户查询体验。

对大多数用户来说,查询和数据分析是Elasticsearch最吸引人的部分,不过这些还不是我们想要探索的全部内容。因此,本书在涉及索引架构时还会试图跟读者探讨一些额外话题,比如如何选择合适的分片数和副本数,如何调整分片分配行为等。当谈论Elasticsearch和Lucene之间的关系时,我们还将介绍不同的打分算法、算法之间的差异、如何选择合适的存储机制,以及为什么需要做此选择。

最后,我们还将触及Elasticsearch的管理功能,将探讨发现和恢复模块,以及对人类友好的Cat API。Cat API可以帮助我们快速获取相关的运维信息,它的返回数据组织成一种大多数人都易于阅读的格式,无需进行JSON解析。我们还将认识和使用部落节点,它能够为我们提供在多个节点间联合查询的能力。

因为本书的书名,我们无法忽略与性能相关的话题,所以我们决定用整整一章来探讨性能。我们谈论了文档取值及其相关改进,还介绍了垃圾回收器的工作方式,以及在垃圾回收器未能如我们期望般工作时可以做些什么。最后,探讨了如何扩展Elasticsearch以应对高索引量和查询量的场景。

和本书第1版一样,我们决定以开发Elasticsearch插件的话题作为本书结尾。我们将展示如何构建Apache Maven项目,并开发两个不同类型的插件—自定义REST操作插件和自定义分析插件。

假如你在读完某些主题后对其产生浓厚的兴趣,那么这本书就是适合你的。希望你在读完后能够喜欢这本书。

目录

[第1章 Elasticsearch简介
1.1 Apache Lucene简介 ](https://yq.aliyun.com/articles/120277/)
1.1.1 熟悉Lucene
1.1.2 Lucene的总体架构
1.1.3 分析数据
1.1.4 Lucene查询语言
1.2 何为Elasticsearch
1.2.1 Elasticsearch的基本概念
1.2.2 Elasticsearch架构背后的关键概念
1.2.3 Elasticsearch的工作流程
1.3 在线书店示例
1.4 小结
[第2章 查询DSL进阶
2.1 Apache Lucene默认评分公式解释 ](https://yq.aliyun.com/articles/120323/)
2.1.1 何时文档被匹配上
2.1.2 TF/IDF评分公式
2.1.3 Elasticsearch如何看评分
2.1.4 一个例子
2.2 查询改写
2.2.1 前缀查询示例
2.2.2 回到Apache Lucene
2.2.3 查询改写的属性
2.3 查询模板
2.3.1 引入查询模板
2.3.2 Mustache模板引擎
2.3.3 把查询模板保存到文件
2.4 过滤器的使用及作用原理
2.4.1 过滤及查询相关性
2.4.2 过滤器的工作原理
2.4.3 性能考量
2.4.4 后置过滤和过滤查询
2.4.5 选择正确的过滤方式
2.5 选择正确的查询方式
2.5.1 查询方式分类
2.5.2 使用示例
2.6 小结

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
3月前
|
Java 关系型数据库 API
ElasticSearch使用篇
ElasticSearch使用篇
|
3月前
|
搜索推荐 关系型数据库 MySQL
【Elasticsearch】初识elasticsearch
【Elasticsearch】初识elasticsearch
43 1
|
4月前
|
存储 JSON 监控
Elasticsearch简单讲解
Elasticsearch简单讲解
54 0
|
7月前
Elasticsearch应用详解
Elasticsearch应用详解
25 0
|
8月前
|
存储 关系型数据库 MySQL
Elasticsearch(二)
Elasticsearch(二)
40 0
|
8月前
|
存储 关系型数据库 MySQL
Elasticsearch(一)
Elasticsearch(一)
42 0
|
10月前
|
存储 监控 搜索推荐
【Elasticsearch】初识elasticsearch(上)
【Elasticsearch】初识elasticsearch
54 0
|
SQL 搜索推荐 数据挖掘
大话ElasticSearch(下)
搜索引擎简述 什么是搜索? 搜索:就是在任何场景下,找寻你想要的信息,这个时候,会输入一段你要搜索的关键字,然后就期望找到这个关键字相关的有些信息。 搜索分类: 普通的网页搜索、垂直搜索引擎等