这书主要详细介绍有关Elastic Stack的基础知识,领着用户深层次掌握Elastic Stack的具体运用,根据对统计数据检索、系统日志发掘与結果数据可视化展现等有关作用的详细介绍和实战演练,正确引导用户把握有关的互联网大数据检索、日志分析和数据可视化技术性。这书还详解了X-Pack和Beats部件,展现了在Elastic Stack中的某些实践活动。对互联网大数据的检索、发掘、数据可视化及其集群服务器管理方法,在现如今的“互联网技术 ”时期是很必须的。这书的分布式系统互联网大数据检索、系统日志发掘、数据可视化、集群服务器监控器与管理方法等计划方案是应用场景Elastic Stack 5而明确提出的,它能有效用对大量互联网大数据所产生的分布式系统数据储存与解决、全文检索、系统日志发掘、数据可视化、集群服务器管理方法与特性监控器等难题。搭建在全文检索开源软件Lucene之中的Elasticsearch,不但能对大量经营规模的统计数据进行分布式系统引索与查找,还能给出的数据聚合物剖析;Logstash能合理解决来自各种各样数据库的系统日志信息内容;Kibana是为Elasticsearch出示数据统计分析的Web插口,可应用它对统计数据开展高效率的检索、数据可视化、剖析等实际操作;XPack监控器部件可根据Kibana监控器集群服务器的情况;Beats是收集监视系统统计数据的代理商。掌握应用场景Elastic Stack 5的各有关部件并把握他们的基础使用说明和方法,针对互联网大数据检索与发掘及管理方法是很必须的。 和第1版、第2版对比,这书务求体现应用场景Elastic Stack 5构架的*成效,內容新奇,注重实践活动。这书若为高等院校有关技术专业(如电子信息科学与技术性、中国科学技术大学、物联网技术、信息化管理与信息管理系统、计算机科学与云计算技术)大学生的学习培训和学科建设出示协助,一起针对从业互联网大数据检索与发掘、日志分析、信息可视化、集群服务器管理方法与特性监控器的工程项目专业技术人员和期待掌握互联网信息搜索技术性的工作人员也具备较高的实用价值和工程项目运用使用价值。
目录
- 第1章概述1
- 1.1Elasticsearch概述3
- 1.1.1Elasticsearch的安装与简单配置4
- 1.1.2Elasticsearch API的简单使用方式7
- 1.2Logstash7
- 1.3Kibana8
- 1.4其他8
- 1.5扩展知识与阅读9
- 1.6本章小结10
- 第2章文档索引及管理11
- 2.1文档索引概述11
- 2.2Head: Elasticsearch的数据管理工具13
- 2.3建立索引16
- 2.4通过映像mappings配置索引20
- 2.4.1在索引中使用映像21
- 2.4.2管理/配置映像22
- 2.4.3获取映像信息22
- 2.4.4删除映像24
- 2.5管理索引文件24
- 2.5.1打开、关闭、检测、删除索引文件24
- 2.5.2清空索引缓存25
- 2.5.3刷新索引数据25
- 2.5.4优化索引数据26
- 2.5.5Flush操作26[1][2][1][3]2.6设置中文分析器26
- 2.7对文档的其他操作29
- 2.7.1获取指定的文档信息29
- 2.7.2删除文档中的信息31
- 2.7.3数据更新31
- 2.7.4基于POST方式批量获取文档34
- 2.8实例36
- 2.9扩展知识与阅读40
- 2.10本章小结41
- 第3章信息检索与聚合42
- 3.1实验数据集描述43
- 3.2基本检索44
- 3.2.1检索方式44
- 3.2.2query查询45
- 3.2.3from / size查询45
- 3.2.4查询结果排序46
- 3.2.5高亮搜索词48
- 3.2.6查询模板50
- 3.3检索进阶50
- 3.3.1全文检索51
- 3.3.2词项检索54
- 3.3.3复合查询58
- 3.3.4跨度查询60
- 3.3.5特殊查询63
- 3.3.6脚本script64
- 3.4聚合67
- 3.4.1metrics aggregations68
- 3.4.2bucket aggregations72
- 3.4.3pipeline aggregations81
- 3.4.4matrix aggregations85
- 3.5实例87
- 3.6扩展知识与阅读92
- 3.7本章小结93
- 第4章面向Java的Elasticsearch Client部分功能实现94
- 4.1Elasticsearch节点实例化94
- 4.1.1通过Maven添加Elasticsearch依赖94
- 4.1.2初始化TransportClient96
- 4.2索引数据98
- 4.2.1准备JSON数据98
- 4.2.2索引JSON数据100
- 4.3对索引文档的操作101
- 4.3.1获取索引文档数据101
- 4.3.2删除索引文档104
- 4.3.3更新索引文档105
- 4.3.4批量操作索引文件105
- 4.4信息检索107
- 4.4.1概述107
- 4.4.2MultiSearch109
- 4.4.3Search template110
- 4.4.4Query DSL概述110
- 4.4.5matchAllQuery111
- 4.4.6全文检索的部分方法112
- 4.4.7词项检索的部分方法115
- 4.4.8复合查询的部分方法119
- 4.4.9跨度查询的部分方法121
- 4.4.10特殊查询124
- 4.5聚合126
- 4.5.1Metrics聚合126
- 4.5.2Bucket聚合130
- 4.6对检索结果的进一步处理134
- 4.6.1控制每页的显示数量及显示排序依据134
- 4.6.2基于scroll的检索结果及其分页135
- 4.7实例137
- 4.7.1在Elasticsearch中建立索引137
- 4.7.2连接Elasticsearch138
- 4.7.3信息采集与索引构建139
- 4.7.4搜索模块的实现141
- 4.7.5推荐模块的实现142
- 4.7.6聚合模块的实现143
- 4.8扩展知识与阅读145
- 4.9本章小结145
- 第5章Elasticsearch配置与集群管理146
- 5.1Elasticsearch部分基本配置及其说明146
- 5.2索引和查询效率的优化149
- 5.3监控集群状态150
- 5.4控制索引分片与副本分配152
- 5.5集群管理154
- 5.6扩展知识与阅读155
- 5.7本章小结156
- 第6章基于Logstash的日志处理157
- 6.1概述158
- 6.2Input: 处理输入的日志数据160
- 6.2.1处理基于file方式输入的日志信息161
- 6.2.2处理基于generator产生的日志信息162
- 6.2.3处理基于log4j的日志信息163
- 6.2.4处理基于redis的日志信息165
- 6.2.5处理基于stdin方式输入的信息168
- 6.2.6处理基于TCP传输的日志数据169
- 6.2.7处理基于UDP传输的日志数据173
- 6.3codecs: 格式化日志数据174
- 6.3.1JSON格式175
- 6.3.2rubydebug格式177
- 6.3.3plain格式177
- 6.4基于filter的日志处理与转换178
- 6.4.1JSON filter178
- 6.4.2grok filter180
- 6.4.3kv filter182
- 6.5output: 输出日志数据184
- 6.5.1将处理后的日志输出到Elasticsearch中185
- 6.5.2将处理后的日志输出至文件中186
- 6.5.3将处理后的部分日志输出到csv格式的文件中187
- 6.5.4将处理后的日志输出到redis中189
- 6.5.5将处理后的部分日志通过UDP协议输出190
- 6.5.6将处理后的部分日志通过TCP协议输出192
- 6.5.7将收集到的日志信息传输到自定义的HTTP接口中195
- 6.6扩展知识与阅读196
- 6.7本章小结197
- 第7章基于Kibana的数据分析可视化198
- 7.1Kibana概述199
- 7.2安装Kibana199
- 7.3使用Management管理配置200
- 7.3.1添加index pattern200
- 7.3.2高级设置202
- 7.3.3管理已保存的检索、可视化和仪表板205
- 7.4使用Discover执行查询206
- 7.4.1设置时间过滤器206
- 7.4.2在index pattern中执行搜索207
- 7.4.3字段过滤208
- 7.4.4查看文档数据210
- 7.5使用Visualize创建统计图表211
- 7.6使用Dashboard创建动态仪表板214
- 7.6.1创建新的动态仪表板215
- 7.6.2打开已保存的动态仪表板215
- 7.6.3分享动态仪表板216
- 7.7使用Timelion创建时间线216
- 7.8使用Dev Tools执行命令行218
- 7.8.1在Console中执行命令218
- 7.8.2Console的快捷键220
- 7.8.3Console的配置221
- 7.9网站性能监控可视化应用的设计与实现221
- 7.9.1概述222
- 7.9.2使用Visualize实现可视化222
- 7.9.3使用Dashboard整合可视化结果225
- 7.10扩展知识与阅读227
- 7.11本章小结227
- 第8章基于XPack的系统运行监控229
- 8.1XPack概述229
- 8.2安装XPack230
- 8.3Security插件与安全性231
- 8.3.1身份验证机制与用户管理231
- 8.3.2匿名访问233
- 8.3.3基于域的用户认证234
- 8.3.4基于角色的访问权限配置236
- 8.3.5IP过滤238
- 8.3.6带有身份认证的TransportClient240
- 8.3.7带有身份认证的RESTful命令243
- 8.4使用Monitoring监控系统运行状态243
- 8.4.1系统运行状态监控243
- 8.4.2配置Monitoring247
- 8.4.3搭建独立的Monitoring集群248
- 8.5Alerting插件与异常事件警报250
- 8.5.1通过RESTful方式设置监视器250
- 8.5.2通过Java程序设置监视器254
- 8.6Reporting与报告生成256
- 8.6.1在程序中生成报告256
- 8.6.2通过监视器自动生成报告257
- 8.7使用Graph探索数据关联259
- 8.8扩展知识与阅读261
- 8.9本章小结261
- 第9章基于Beats的数据解析传输262
- 9.1基于Packetbeat的网络数据包传输263
- 9.1.1概述263
- 9.1.2安装263
- 9.1.3配置264
- 9.1.4加载索引模板266
- 9.1.5启动和关闭267
- 9.1.6使用Kibana进行展示268
- 9.2基于Filebeat的日志传输269
- 9.2.1概述269
- 9.2.2安装和配置269
- 9.2.3启动和关闭272
- 9.2.4使用Kibana进行展示272
- 9.3基于Metricbeat的系统指标数据传输273
- 9.3.1概述273
- 9.3.2安装和配置274
- 9.3.3启动和关闭275
- 9.3.4使用Kibana进行展示276
- 9.4基于Winlogbeat的Windows事件日志数据传输277
- 9.4.1概述277
- 9.4.2安装278
- 9.4.3配置279
- 9.4.4启动和关闭282
- 9.4.5使用Kibana进行展示283
- 9.5扩展知识与阅读284
- 9.6本章小结285
- 第10章网络信息检索与分析实践1286
- 10.1信息采集286
- 10.2基于Python的信息检索及Web端设计291
- 10.2.1安装Python及Django291
- 10.2.2安装Elasticsearch的Python插件292
- 10.2.3Web页面设计293
- 10.3基于Logstash的日志处理296
- 10.3.1安装和配置Nginx297
- 10.3.2设计面向日志文件的pattern297
- 10.3.3在Logstash中进行相关配置298
- 10.4基于Kibana的日志分析结果可视化设计与实现299
- 10.4.1图表1: 状态码走势分析300
- 10.4.2图表2: 查询词分析302
- 10.4.3图表3: 分析各状态码随时间的变迁302
- 10.4.4集成图表304
- 10.5扩展知识与阅读304
- 10.6本章小结305
- 第11章网络信息检索与分析实践2306
- 11.1面向动态网站的信息采集307
- 11.1.1软件准备307
- 11.1.2浏览器驱动程序准备307
- 11.1.3创建索引和映像308
- 11.1.4导入依赖309
- 11.1.5数据采集310
- 11.2基于Spring MVC的信息检索及Web程序设计317
- 11.2.1创建和配置Spring MVC项目317
- 11.2.2前端页面设计319
- 11.2.3后端控制器类324
- 11.3基于Logstash的日志处理329
- 11.4基于Beats的数据传输330
- 11.5基于Kibana的数据可视化331
- 11.5.1可视化索引文件中的信息331
- 11.5.2对Logstash、Beats的可视化展示333
- 11.6基于XPack的系统监控335
- 11.7扩展知识与阅读337
- 11.8本章小结337
- 参考文献339