第一部分 Elasticsearch 前传
第1 章 搜索技术发展史 2
1.1 正说搜索技术发展史 2
1.2 Elasticsearch 简介 . 5
1.3 Lucene 简介 . 5
1.4 知识点关联 . 7
1.5 小结 . 15
第2 章 搜索技术基本知识 16
2.1 数据搜索方式 . 16
2.2 搜索引擎工作原理 17
2.3 网络爬虫工作原理 18
2.4 网页分析 . 20
2.5 倒排索引 . 23
2.6 结果排序 . 26
2.7 中文分词实战 . 27
2.7.1 Ansj 中文分词 . 27
2.7.2 Jcseg 轻量级 Java 中文分词器 . 30
2.8 知识点关联 . 38
2.9 小结 . 39
第二部分 Elasticsearch 实战
第3 章 初识Elasticsearch 42
3.1 Elasticsearch 简介 . 42
3.2 Elasticsearch 的安装与配置 43
3.2.1 安装Java 环境 . 43
3.2.2 Elasticsearch 的安装 47
3.2.3 Elasticsearch 的配置 52
3.3 Elasticsearch 的核心概念 . 60
3.4 Elasticsearch 的架构设计 . 62
3.4.1 Elasticsearch 的节点自动发现机制 64
3.4.2 节点类型 66
3.4.3 分片和路由 66
3.4.4 数据写入过程 67
3.5 知识点关联 . 70
3.6 小结 . 75
第4 章 初级客户端实战 76
4.1 初级客户端初始化 76
4.2 提交请求 . 83
4.3 对请求结果的解析 89
4.4 常见通用设置 . 91
4.5 高级客户端初始化 95
4.6 创建请求对象模式 98
4.7 知识点关联 . 98
4.8 小结 . 100
第5 章 高级客户端文档实战一 . 101
5.1 文档 . 102
5.2 文档索引 . 103
5.3 文档索引查询 . 114
5.4 文档存在性校验 . 118
5.5 删除文档索引 . 121
5.6 更新文档索引 . 125
5.7 获取文档索引的词向量 131
5.8 文档处理过程解析 138
5.8.1 文档的索引过程 138
5.8.2 文档在文件系统中的处理过程 140
5.9 知识点关联 . 145
5.10 小结 . 146
第6 章 高级客户端文档实战二 . 147
6.1 批量请求 . 148
6.2 批量处理器 . 154
6.3 MultiGet 批量处理实战 158
6.4 文档ReIndex 实战 164
6.5 文档查询时更新实战 171
6.6 文档查询时删除实战 176
6.7 获取文档索引的多词向量 180
6.8 文档处理过程解析 185
6.8.1 Elasticsearch 文档分片存储 185
6.8.2 Elasticsearch 的数据分区 187
6.9 知识点关联 . 188
6.10 小结 . 189
第7 章 搜索实战 . 190
7.1 搜索API 191
7.2 滚动搜索 . 208
7.3 批量搜索 . 220
7.4 跨索引字段搜索 . 228
7.5 搜索结果的排序评估 235
7.6 搜索结果解释 . 243
7.7 统计 . 251
7.8 搜索过程解析 . 258
7.8.1 对已知文档的搜索 258
7.8.2 对未知文档的搜索 259
7.8.3 对词条的搜索 260
7.9 知识点关联 . 262
7.10 小结 . 262
第8 章 索引实战 . 263
8.1 字段索引分析 . 264
8.2 创建索引 . 271
8.3 获取索引 . 277
8.4 删除索引 . 282
8.5 索引存在验证 . 285
8.6 打开索引 . 289
8.7 关闭索引 . 292
8.8 缩小索引 . 296
8.9 拆分索引 . 299
8.10 刷新索引 . 303
8.11 Flush 刷新 306
8.12 同步Flush 刷新 . 310
8.13 清除索引缓存 . 314
8.14 强制合并索引 . 317
8.15 滚动索引 . 322
8.16 索引别名 . 326
8.17 索引别名存在校验 330
8.18 获取索引别名 . 333
8.19 索引原理解析 . 337
8.19.1 近实时搜索的实现 337
8.19.2 倒排索引的压缩 337
8.20 知识点关联 . 338
8.21 小结 . 339
第三部分 Elasticsearch 生态
第9 章 Elasticsearch 插件 342
9.1 插件简介 . 342
9.2 插件管理 . 343
9.3 分析插件 . 346
9.3.1 分析插件简介 346
9.3.2 Elasticsearch 中的分析插件 347
9.3.3 ICU 分析插件 349
9.3.4 智能中文分析插件 360
9.4 API 扩展插件 367
9.5 监控插件 . 368
9.6 数据提取插件 . 368
9.7 常用插件实战 . 369
9.7.1 Head 插件 369
9.7.2 Cerebro 插件 385
9.8 知识点关联 . 393
9.9 小结 . 394
第10 章 Elasticsearch 生态圈 395
10.1 ELK 395
10.1.1 Elastic Stack . 395
10.1.2 Elastic Stack 版本的由来 396
10.1.3 ELK 实战的背景 . 397
10.1.4 ELK 的部署架构变迁 . 397
10.2 Logstash . 400
10.2.1 Logstash 简介 400
10.2.2 Logstash 的输入模块 402
10.2.3 Logstash 过滤器 403
10.2.4 Logstash 的输出模块 404
10.3 Kibana 405
10.3.1 Kibana 简介 . 405
10.3.2 连接Elasticsearch 406
10.4 Beats 410
10.4.1 Beats 简介 410
10.4.2 Beats 轻量级设计的实现 412
10.4.3 Beats 的架构 412
10.5 知识点关联 . 413
10.6 小结 . 414