书籍详情

Elasticsearch数据搜索与分析实战

Elasticsearch数据搜索与分析实战

作者:王深湛

出版社:人民邮电出版社

出版时间:2023-04-01

ISBN:9787115603654

定价:¥99.80

购买这本书可以去
内容简介
  本书从Elasticsearch的功能和业务场景开始介绍,逐步深入讲解Elasticsearch在数据搜索和数据分析领域的实战应用,并详细介绍Elasticsearch的Java高级客户端编程方法和整个Elastic Stack技术生态体系。 本书共12章,第1章讲述Elasticsearch的业务场景和安装配置;第2章讲述Elasticsearch内部实现的各种原理;第3章讲述Elasticsearch索引的使用方法;第4章讲述文本分析的过程和文本分析器的使用;第5章讲述Elasticsearch支持的各种搜索方式;第6章讲述使用聚集统计进行数据分析的方法;第7章讲述索引之间存在父子关系时的解决方法;第8章讲述Elasticsearch的Java高级客户端编程方法;第9章讲述Elasticsearch集群的搭建、优化、备份方法;第10~12章讲述Elastic Stack各组件的配合使用。 本书内容通俗易懂,易于学习,既讲理论原理又侧重介绍开发实战,很适合Java后端开发工程师、大数据开发工程师、Elasticsearch技术讲师和学员及搜索引擎技术的爱好者阅读。另外,本书也可以作为培训机构的教材,用来指导Elasticsearch新手的入门学习。
作者简介
  武汉大学计算机硕士,长期专注于Java后端开发,擅长领域为微服务、全文检索和大数据分析。目前供职于中国科学院下某研究所担任高级研发工程师,长期在一线担任开发职位,项目经验丰富,热衷于开源事业,乐于做技术分享和交流。
目录
原理篇
第 1章 快速入门 03
1 1 Elasticsearch简介 03
1 2 Elasticsearch的典型接入方式 04
1 2 1 将Elasticsearch作为数据源 04
1 2 2 给已有系统添加Elasticsearch 05
1 2 3 使用Elastic Stack 05
1 3 专有名词解释 06
1 4 安装Elasticsearch 7 9 1 08
1 5 安装Kibana调试Elasticsearch 09
1 6 Elasticsearch节点的重要配置 11
1 6 1 集群节点的配置方法和优先级 12
1 6 2 elasticsearch yml的重要配置 13
1 6 3 配置JVM的堆内存大小 15
1 7 本章小结 16
第 2章 深入原理 17
2 1 搜索引擎的基本原理 17
2 2 Elasticsearch集群的形成机制 19
2 2 1 集群节点的发现、选举和引导过程 20
2 2 2 集群状态的发布过程 20
2 3 索引分片的分配机制 21
2 3 1 分片的分配 21
2 3 2 分片分配的过程 22
2 3 3 分片分配的感知 25
2 3 4 分片分配的过滤 27
2 4 索引分片的恢复机制 28
2 4 1 分片的恢复 29
2 4 2 分片恢复的过程 29
2 4 3 减少不必要的分片恢复 32
2 5 索引数据的写入过程 33
2 6 索引数据的搜索过程 35
2 7 本章小结 36
应用篇
第3章 索引数据 41
3 1 使用映射定义索引结构 41
3 1 1 映射的概念和使用 41
3 1 2 映射支持的常规字段类型 43
3 1 3 忽略映射中不合法的数据 48
3 1 4 字段复制和字段存储 51
3 1 5 动态映射 54
3 2 索引中数据的增删改查 60
3 2 1 使用REST端点对索引映射中的数据进行增删改查 61
3 2 2 使用乐观锁进行并发控制 63
3 2 3 索引数据的批量写入 65
3 3 索引数据的路由规则 68
3 3 1 索引数据路由的原理 69
3 3 2 使用自定义路由分发数据 69
3 4 索引的别名 73
3 4 1 别名的创建和删除 73
3 4 2 别名配合数据过滤 74
3 4 3 别名配合数据路由 76
3 5 滚动索引 77
3 6 索引的状态管理 80
3 6 1 清空缓存 80
3 6 2 刷新索引 81
3 6 3 冲洗索引 81
3 6 4 强制合并 82
3 6 5 关闭索引 82
3 6 6 冻结索引 83
3 7 索引的块 83
3 8 索引模板 84
3 8 1 使用索引模板定制索引结构 84
3 8 2 使用模板组件简化模板配置 88
3 9 索引的监控 90
3 9 1 监控索引的健康状态 90
3 9 2 监控索引分片的段数据 91
3 9 3 监控索引分片的分配 93
3 9 4 监控索引分片的恢复 93
3 9 5 监控索引的统计指标 95
3 10 控制索引分片的分配 97
3 11 本章小结 98
第4章 文本分析 99
4 1 文本分析的原理 99
4 2 使用内置的分析器分析文本 100
4 2 1 标准分析器 100
4 2 2 简单分析器 105
4 2 3 空格分析器 106
4 3 使用IK分词器分析文本 108
4 3 1 安装IK分词器 108
4 3 2 在索引中使用IK分词器 108
4 4 自定义文本分析器分析文本 112
4 4 1 字符过滤器 112
4 4 2 分词器 115
4 4 3 分词过滤器 119
4 4 4 给索引添加自定义分析器 124
4 5 查看文档的词条向量 127
4 6 keyword类型字段的标准化 131
4 7 本章小结 134
第5章 搜索数据 135
5 1 精准级查询 136
5 1 1 术语查询 136
5 1 2 多术语查询 137
5 1 3 主键查询 139
5 1 4 范围查询 140
5 1 5 存在查询 142
5 1 6 前缀查询 143
5 1 7 正则查询 145
5 1 8 通配符查询 146
5 2 全文检索 147
5 2 1 匹配搜索 148
5 2 2 布尔前缀匹配搜索 150
5 2 3 短语搜索 151
5 2 4 短语前缀匹配搜索 152
5 2 5 多字段匹配搜索 152
5 2 6 查询字符串搜索 153
5 3 经纬度搜索 156
5 3 1 圆形搜索 156
5 3 2 矩形搜索 158
5 3 3 多边形搜索 160
5 4 复合搜索 161
5 4 1 布尔查询 161
5 4 2 常量得分查询 164
5 4 3 析取查询 165
5 4 4 相关度增强查询 166
5 5 搜索结果的总数 166
5 6 搜索结果的分页 167
5 6 1 普通分页 168
5 6 2 滚动分页 168
5 6 3 Search after分页 169
5 7 搜索结果的排序 171
5 8 筛选搜索结果返回的字段 172
5 9 高亮搜索结果中的关键词 174
5 10 折叠搜索结果 175
5 11 解释搜索结果 180
5 12 本章小结 181
第6章 聚集统计 183
6 1 度量聚集 183
6 1 1 平均值聚集 184
6 1 2 值和小值聚集 185
6 1 3 求和聚集 186
6 1 4 统计聚集 186
6 1 5 基数聚集 187
6 1 6 百分比聚集 188
6 1 7 百分比等级聚集 190
6 1 8 头部命中聚集 191
6 1 9 矩阵统计聚集 192
6 2 桶聚集 194
6 2 1 词条聚集 194
6 2 2 范围聚集 198
6 2 3 日期范围聚集 200
6 2 4 直方图聚集 202
6 2 5 日期直方图聚集 204
6 2 6 缺失聚集 207
6 2 7 过滤器聚集 208
6 2 8 多过滤器聚集 209
6 3 管道聚集 210
6 3 1 平均桶聚集 211
6 3 2 求和桶聚集 212
6 3 3 桶和小桶聚集 214
6 3 4 累计求和桶聚集 216
6 3 5 差值聚集 217
6 4 使用fielddata聚集text字段 219
6 5 使用全局有序编号加快聚集速度 221
6 6 给聚集请求添加后过滤器 222
6 7 本章小结 224
第7章 父子关联 226
7 1 使用对象数组存在的问题 226
7 2 嵌套对象 229
7 2 1 在索引中使用嵌套对象 229
7 2 2 嵌套对象的搜索 231
7 2 3 嵌套对象的聚集 236
7 3 join字段 240
7 3 1 在索引中使用join字段 240
7 3 2 join字段的搜索 243
7 3 3 join字段的聚集 248
7 4 在应用层关联数据 253
7 5 本章小结 255
第8章 Java高级客户端编程 257
8 1 开发前的准备 257
8 2 建立索引并写入数据 259
8 2 1 创建映射 259
8 2 2 写入、修改、删除数据 263
8 3 搜索数据 267
8 4 统计分析 274
8 5 为索引接入实时数据 278
8 6 本章小结 279
第9章 集群扩展和性能优化 280
9 1 节点的角色类型 280
9 2 在CentOS 7上搭建Elasticsearch集群 282
9 2 1 准备工作 282
9 2 2 安装集群 284
9 2 3 验证安装 286
9 3 推荐的集群配置 288
9 4 监控集群 292
9 4 1 监控集群的状态信息 292
9 4 2 监控集群的健康状态 294
9 4 3 监控集群节点的统计指标 295
9 4 4 监控节点的热点线程 298
9 4 5 查看慢搜索日志 298
9 4 6 查看慢索引日志 299
9 5 索引分片数的设置与横向扩容 300
9 6 优化索引的写入速度 303
9 6 1 避免写入过大的文档 303
9 6 2 合并写入请求 304
9 6 3 适当增大写入的线程数和索引缓冲区 307
9 7 优化搜索的响应速度 307
9 7 1 避免深度分页 308
9 7 2 合并搜索请求 308
9 7 3 使用缓存加快搜索速度 311
9 7 4 控制搜索请求的路由 313
9 8 集群的重启 314
9 8 1 全集群重启 315
9 8 2 滚动重启 316
9 9 集群的备份和恢复 317
9 9 1 搭建共享文件目录 317
9 9 2 备份集群数据 319
9 9 3 恢复集群数据 322
9 9 4 删除备份数据 323
9 9 5 自动化备份 323
9 10 远程集群 325
9 10 1 配置远程集群 325
9 10 2 搜索远程集群的数据 327
9 11 本章小结 328
发散篇
第 10章 Logstash:数据的源泉 333
10 1 Logstash的工作原理 333
10 2 Logstash的安装和目录结构 334
10 3 Logstash的重要配置 335
10 4 Logstash采集脚本的结构 336
10 5 实战举例的执行 337
10 5 1 采集Nginx日志数据到索引中 338
10 5 2 全量抽取表数据到索引中 340
10 5 3 增量抽取表数据到索引中 345
10 5 4 如何给敏感配置项加密 347
10 6 本章小结 347
第 11章 Kibana:数据可视化利器 349
11 1 在CentOS 7上安装Kibana 349
11 2 用Kibana可视化管理数据 350
11 2 1 索引管理 350
11 2 2 快照备份和恢复管理 352
11 2 3 远程集群管理 357
11 3 开发工具 358
11 3 1 REST端点控制台 358
11 3 2 搜索调试器 359
11 3 3 Grok正则模式调试器 360
11 4 数据可视化分析 360
11 4 1 Discover发现 360
11 4 2 Visualize可视化组件 362
11 4 3 Maps地图 363
11 4 4 Dashboard大屏仪表盘 364
11 4 5 Canvas画布 364
11 4 6 查看样例数据 365
11 5 本章小结 367
第 12章 Beats家族:精细化数据采集 368
12 1 Beats家族在Elastic Stack中的职责 368
12 2 Filebeat的安装和工作原理 369
12 3 filebeat yml的重要配置 370
12 4 Filebeat采集Nginx日志到
Elasticsearch中 372
12 5 Filebeat采集日志到Logstash中 375
12 6 本章小结 378

猜您喜欢

读书导航