搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
出版时间 :
无库存
大数据搜索与挖掘及可视化管理方案(第4版)
0.00     定价 ¥ 59.00
泸西县图书馆
此书还可采购1本,持证读者免费借回家
  • ISBN:
    9787302507994
  • 作      者:
    高凯,岳重阳,江跃华
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2019-07-01
收藏
内容介绍

本书系统地介绍数据搜索与实时分析引擎套件Elastic Stack的相关技术,并通过实战讲解的方式介绍Elasticsearch、Logstash、Kibana、XPack、Beats等的应用。全书共11章,内容涵盖Elasticsearch架构简介、文档索引及管理、信息检索与聚合、Elasticsearch API及其应用、Elasticsearch配置与集群管理、基于Logstash的日志处理、基于Kibana的数据分析及可视化、基于XPack的系统运行监控、基于Beats的数据解析传输,z后给出两个信息检索与分析实例。

本书强调实践和面向初学者,力求反映基于Elastic Stack 6架构的z新成果。本书可供高等学校计算机科学与技术、软件工程、物联网、信息管理与信息系统等专业的学生在学习和科研中参考。对于从事大数据搜索与挖掘、日志分析、信息可视化、集群管理与性能监控的工程技术人员和希望了解网络信息检索技术的人员也具有较高的参考价值和工程应用价值。


展开
精彩书摘
  Chapter 5第5章第5章Elasticsearch配置与集群管理Elasticsearch comes with reasonable defaults for most settings. Before you set out to tweak and tune the configuration, make sure you understand what are you trying to accomplish and the consequences. The primary way of configuring a node is via the elasticsearch.yml file. This template lists the most important settings you may want to configure for a production cluster.
  elasticsearch.yml
  基于Elasticsearch可以完成很多和信息存储、检索等相关的任务。本章对Elasticsearch的配置、集群管理等进行说明,并对提高索引和查询效率的策略进行了简述。通过对本章的学习,能达到更好地配置和使用Elasticsearch的目的。
  5.1Elasticsearch的部分基本配置
  Elasticsearch的大多数配置信息在Elasticsearch安装主目录下的config/elasticsearch.yml文件中,所有配置都可使用环境变量。其他的配置信息在同一目录下的日志配置文件log4j2.properties中,按普通log4j2配置项来设置即可。
  elasticsearch.yml负责设置服务器的默认状态,Elasticsearch的大多数配置在该配置文件中完成。本节给出针对elasticsearch.yml的部分配置设置信息,具体如下:
  (1) 集群名称cluster.name,例如“cluster.name: elasticsearch”。设置好以后,Elasticsearch会自动发现在同一网段下的节点。如果在同一网段下有多个集群,可用这个属性来区分不同的集群。
  (2) 节点名称node.name。Elasticsearch启动时会自动创建节点名称,也可以在node.name中配置,例如“node.name: "Master"”。指定节点名称有助于利用API访问具体的节点。虽然集群启动时会给每个节点初始化一个默认的名称,但仍然建议在这里手动设置节点名称。
  (3) 节点是否为主节点(master)。每个节点都可被配置成主节点,默认值为true,如“node.master: true”。该设置的目的是指定该节点是否有资格被选举为主节点,默认集群中的第一个节点为主节点,如果这个节点宕机,就会重新选举主节点。
  〖1〗〖2〗〖1〗〖3〗(4) 设置节点是否存储数据。默认值为true,即设置node.data的值为“node.data: true”。如果希望节点只是一个主节点,但是不存储数据,则应当设置为代码段5.1所示的属性。代码段5.1: 设置节点是主节点但不存储数据
  node.master: true
  node.data: false
  如果要使节点只存储数据,但不是主节点,则应当设置为代码段5.2所示的属性。代码段5.2: 设置节点不作为主节点,但存储数据
  node.master: false
  node.data: true
  如果要使节点既不是主节点,也不存储数据,则应该设置为代码段5.3所示的属性。代码段5.3: 设置节点既不是主节点也不存储数据
  node.master: false
  node.data: false
  对部分相关配置的说明如下:
  (1) node.attr.rack用于设置机架编号,如Rack1。
  (2) 可在node.max_local_storage_nodes中设置一台机器能运行的最大节点数目。
  (3) path.conf: /path/to/conf用于设置配置文件的存储路径,默认是Elasticsearch根目录下的config文件夹。
  (4) path.data: /path/to/data用于设置分配给当前节点的索引数据所在位置,默认是Elasticsearch根目录下的data文件夹,可以选择包含一个以上的位置,用逗号隔开,这样使得数据在文件级别可跨越位置,在创建时就有更多的自由路径可供选择。
  (5) path.logs: /path/to/logs用于设置日志文件所在位置,默认是Elasticsearch根目录下的logs文件夹。
  (6) 设置绑定的IP地址,可以是IPv4地址或IPv6地址。默认情况下Elasticsearch使用0.0.0.0地址,并为HTTP传输开启9200~9300端口,为节点到节点的通信开启9300~9400端口。也可自行设置IP地址,可在配置文件的network.bind_host和network.publish_host中进行设置。
  (7) transport.tcp.port用于设置节点与其他节点交互的TCP端口,默认为9300。
  (8) transport.tcp.compress用于设置是否压缩TCP传输时的数据,默认为false。
  (9) http.port用于设置为HTTP传输监听定制的端口,默认为9200。
  (10) http.enabled用于设置是否使用HTTP对外提供服务,默认为true。
  (11) http.max_content_length用于设置内容的最大长度,默认为100MB。
  (12) discovery.zen.minimum_master_nodes用于设置集群中的节点可以知道几个有主节点资格的节点,默认为1。对于较大的集群来说,可以将该值设置为“具有主节点资格的节点数/2+1”。
  (13) discovery.zen.ping_timeout用于设置集群中自动发现其他节点时ping连接超时时间,默认为3s。对于比较差的网络环境,可以提高该值来防止自动发现时出错。
  (14) gateway.recover_after_nodes用于设置集群中有几个节点启动时进行数据恢复,默认为1。
  (15) gateway.recover_after_time用于设置初始化数据恢复进程的超时时间,默认为5min。
  (16) gateway.expected_nodes用于设置这个集群中节点的数量,默认为2。一旦有设定数量的节点启动,就会立即进行数据恢复。
  (17) cluster.routing.allocation.node_initial_primaries_recoveries用于初始化数据恢复时并发恢复线程的个数,默认为4。
  (18) cluster.routing.allocation.node_concurrent_recoveries用于设置添加删除节点或负载均衡时并发恢复线程的个数,默认为4。
  (19) indices.recovery.max_bytes_per_sec用于设置数据恢复时限制的带宽,如100MB/s,默认为0(即无限制)。
  (20) discovery.zen.ping.unicast.hosts: \["host1","host2:port","host3\[portXportY\]"\]用于设置集群中主节点的初始列表,可通过这些节点自动发现新加入集群的节点。在Elasticsearch 5.0及后续版本中,不允许在节点配置文件中写入形如number_of_shards、number_of_replicas这样的索引级配置。应使用RESTful index API来更新所有节点的配置,关于这部分的执行方法参见2.3节的相关内容。
  5.2索引文件和查询优化
  Elasticsearch的索引文件是基于倒排索引机制完成的。从索引优化的角度出发,在建立索引文件时,要考虑到影响索引速度的以下因素:
   分片数量。
   节点数量。
   索引操作(如合并、优化、索引写操作等)。
   磁盘I/O次数及速度。
  从提高效率的角度出发,可以从如下几点来考虑提高索引工作效率:
   客户端减少频繁的连接并提高效率(如在可能的前提下使用TCP长连接、采用多线程机制、建立连接池等)。
   尽量减小索引文件大小(索引前预处理、过滤等)。
   合理规划映像。
   合理使用分词。
  从查询优化的角度来说,可以合理规划索引和分片来提高查询效率。
  除了上述策略外,路由选择也是经常要用到的。由于Elasticsearch的信息往往分布在不同的分片中,因此在搜索时,大多数情况下需要遍历所有分片以便能检索到相关信息。其实,在某些情况下,如果能指定特定的分片(即显式地指定路由),有时是能够提高检索效率的。可以在存储数据时为每个文档自定义一个routing值来代替其id号,在查询、删除、更新数据时只需给出相同的routing值即可。在Elasticsearch中,对同样的id号会得到同样的哈希值,因此特定用户的所有文档会被放置在一个分片上。在检索时,利用哈希值就只需搜索一个分片而非遍历所有分片。代码段5.4给出了在索引文件information中加入新数据时指定routing的方法。代码段5.4: routing参数的使用
  curl -H 'Content-Type: application/json' -XPUT localhost:9200/information/
  _doc/6?routing=user1&refresh=true -d '{
  "title": "A new book"
  }'
  使用routing参数查询该条数据的代码如下:curl -H 'Content-Type: application/json' -XGET 'localhost:9200/information/
  _doc/6?routing=user1'5.3监控集群状态
  可以通过HTTP接口监控集群状态,例如http://localhost:9200/_cluster/health?pretty,可以观察到当前集群的状态。图5.1和图5.2是两个不同的Elasticsearch集群的状态。对一个Elasticsearch集群来说,其status的取值可以有如下几种:
   Green: 当Elasticsearch能够根据配置分配所有分片和副本时的状态值,如图5.1所示。
   Yellow: 主分片已经分配完毕,已经做好可以处理请求的准备,但是某些副本尚未完成分配。例如,当只有一个节点,却同时有多个副本时,因为尚无其他节点放置这些副本,因此其状态值可能就是yellow,如图5.2所示。
  图5.1状态为green的集群
  图5.2状态为yellow的集群
   Red: 集群目前尚未准备就绪,可能至少一个主分片没有准备好。
  在Elasticsearch集群IP地址后加上/_cluster/health?pretty参数,再加上&level=indices参数(例如,http://localhost:9200/_cluster/health?pretty&level=indices,如图5.3所示)或者&level=shards参数(例如,http://localhost:9200/_cluster/health?pretty&level=shards,如图5.4所示),可以返回更详细的集群状态信息。图5.4不仅有索引文件的更详细的状态信息,还有其分片的状态信息。
  类似地,也可以监控节点状态,以了解集群在工作过程中发生了什么。和监控集群状态类似,只需在URL后给出相应节点的信息,例如如果监控master节点(master是已在elasticsearch.yml中命名的节点名称),只需在URL的/_nodes参数后添加节点名称及要查询的统计信息即可,如http://localhost:9200/_nodes/master/stats/os,jvm?pretty,如图5.5所示。可以直接指明的部分可用标记信息如下:
   indices: 获得分片大小、文件数量、索引的创建和删除时间、搜索执行时间、字段缓存大小、数据合并与清缓存等信息。
  图5.3增加参数level=indices返回的
  集群状态信息
  图5.4增加参数level=shards返回的
  集群状态信息
   fs: 获得文件系统信息、数据文件路径、可用磁盘空间信息、读/写状态等。
   http: 获得HTTP连接信息。
   jvm: 获得Java虚拟机的内存、垃圾回收、缓冲池、加载/未加载类的数量等信息。
   os: 获得服务器的负载、内存使用情况、虚拟内存使用情况等统计信息。
   process: 获得进程的内存开销、CPU使用情况、打开文件描述符等统计信息。
   thread_pool: 获得分配给不同操作的线程状态信息。
   transport: 获得关于传输模块发送和接收数据的信息。
   breaker: 获得field data断路器的统计信息。
   discovery: 获得第三方集群的统计信息。
   ingest: 获得ingest预处理的统计信息。
  图5.5节点状态信息
  5.4控制索引文件分片与副本分配
  集群中的索引文件可能由多个分片构成,且每个分片可能拥有多个副本。通过将一个单独的索引文件分成多个分片,可以有效处理由于索引文件太大而不能在一台机器上运行的问题。由于每个分片可以有多个副本,通过将副本分配到多个服务器上可以处理更高的查询负载。为了进行分片和副本分配操作,Elasticsearch需要确定将这些分片和副本放在集群的什么地方,即需要确定每个分片和副本分配到哪一个服务器/节点上(Rafal,2015)。可以对一个索引指定每个节点上的最大分片。例如,如果希望ithome索引文件在每个节点上有两个分片,可以运行代码段5.5。代码段5.5: 指定每个节点上的最大分片数
  curl -H 'Content-Type: application/json' -XPUT 'localhost:9200/it-home/
  _settings' -d '{
  "index.routing.allocation.total_shards_per_node" : 2
  }'
  这个属性可以放置在elasticsearch.yml文件中,或使用上面的命令在活动索引上更新(Rafal,2015),也可以手动移动分片和副本。可以使用Elasticsearch提供的RESTful代码_cluster/reroute进行控制。
  假设有3个节点node1、node2和node3,Elasticsearch在node1上分配了ithome索引文件的两个分片,假设希望将第二个分片移动到node2上,并在node3上创建副本,可以采用如代码段5.6所示的方式。代码段5.6: 移动分片和创建副本
  curl -H 'Content-Type: application/json' -XPOST 'localhost:9200/_cluster/reroute' -d '{
  "commands": \[
  {
  "move": {//移动分片
  "index": "it-home",//待移动的索引文件
  "shard": 1,//指定希望移动的分片个数
  "from_node": "node1",//指定源节点
  "to_node": "node2"//指定目的节点
  }
  },
  {
  "allocate_replica": {
  "index": "it-home",//待创建副本的索引文件
  "shard": 1,//指定希望创建副本的分片个数
  "node": "node3"//创建副本的节点
  }
  }
  \]
  }'
  可以通过运行cancel命令来指定希望取消分配的索引、节点以及分片,如代码段5.7所示。代码段5.7: 取消分片分配
  curl -H 'Content-Type: application/json' -XPOST 'localhost:9200/_cluster/reroute' -d '{
  "commands": \[
  {
  "cancel": {//取消操作
  "index": "it-home",//指定索引文件
  "shard": 1,//指定要取消的分片
  "node": "node1"//指定取消分配的节点
  }
  }
  \]
  }'
  另外,还可以将一个未分配的分片分配到一个指定的节点上。假定ithome索引文件中有一个编号为1的分片尚未分配,现希望将其分配到node2上,可使用代码段5.8的方式来实现。代码段5.8: 分配分片
  curl -H 'Content-Type: application/json' -XPOST 'localhost:9200/_cluster/reroute' -d ' {
  "commands": \[
  {
  "allocate": {//分配分片
  "index": "it-home",//指定索引文件
  "shard": 1,//指定要分配的分片编号
  "node": "node2"//指定节点
  }
  }
  \]
  }'
  5.5集群管理
  下面以某个实际环境中的集群管理为例,介绍内存配置等方面的内容。集群硬件采用4台戴尔PowerEdge R720 机架服务器,操作系统为Ubuntu 16.04,Elasticsearch版本为6.2。
  首先,在每台机器上安装Elasticsearch并手动安装XPack插件(详见8.2节)、中文分词器等必要的插件(可能需要在elasticsearch.yml中完成配置)。
  以后台启动的方式分别运行每台机器上装有XPack插件的Elasticsearch,并运行Kibana(详细介绍参见第7章)。进入Kibana中的Monitoring界面(即以前版本中的Marvel),单击Elasticsearch面板中的Overview链接,进入Elasticsearch的监控界面。在上方统计数据栏中显示默认内存大小是4GB,这通常无法满足实际需要。此时需要修改config目录下的jvm.options中默认的参数Xms2g和Xmx2g来设置内存大小。修改完成后重启Elasticsearch,再次进入Monitoring界面,从Memory的值可以看出修改已经生效,集群占用的总内存量上限为32GB(修改前为4GB),如图5.6所示。
  图5.6修改后的Elasticsearch内存大小
  在Linux/Ubuntu系统中,配置Elasticsearch默认的内存大小时,既可以使用上述方法,也可以在bin目录下的Elasticsearch程序(可用gedit等文本编辑工具打开)中取消ES_JAVA_OPTS="Xms8g Xmx8g"的注释,并根据实际需要修改其数值,然后将config目录下jvm.options文件中的Xms2g和Xmx2g参数注释掉,并重启Elasticsearch。
  5.6扩展知识与阅读
  文献(Rafal,2015)介绍了路由选择方法、索引别名及其用途,给出了监控集群状态与健康状况的API的使用方法,对常用的集群诊断工具进行了介绍,对一些问题(如深翻复杂度优化、控制集群再平衡、验证查询等)的处理也给出了建议。
  ……
展开
目录

目录


第1章概述1

1.1Elasticsearch概述3

1.1.1Elasticsearch的安装与简单配置4

1.1.2Elasticsearch API的使用方式7

1.2Logstash7

1.3Kibana8

1.4Beats8

1.5XPack9

1.6其他9

1.7扩展知识与阅读9

1.8本章小结10

第2章文档索引及管理11

2.1文档索引概述11

2.2head: Elasticsearch用于数据管理的工具之一13

2.3建立索引15

2.4通过映像配置索引20

2.4.1在索引中使用映像20

2.4.2管理/配置映像21

2.4.3获取映像信息22

2.4.4删除映像23

2.5管理索引文件24

2.5.1打开、关闭、检测、删除索引文件24

2.5.2清空索引缓存25

2.5.3刷新索引文件25

2.5.4优化索引文件26[1][2][1][3]2.5.5flush操作26

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查询46

3.2.4检索结果排序46

3.2.5高亮搜索词49

3.2.6查询模板50

3.3检索进阶51

3.3.1全文检索51

3.3.2词项检索55

3.3.3复合查询58

3.3.4跨度查询61

3.3.5特殊查询64

3.3.6脚本65

3.4聚合68

3.4.1metric聚合69

3.4.2bucket聚合74

3.4.3pipeline聚合83

3.4.4matrix聚合87

3.5实例88

3.6扩展知识与阅读94

3.7本章小结95

第4章Elasticsearch API及其应用96

4.1Elasticsearch节点实例化96

4.1.1在Java中初始化Elasticsearch96

4.1.2在Python中初始化Elasticsearch100

4.2索引数据101

4.2.1准备JSON数据101

4.2.2为JSON数据生成索引103

4.3对索引文件的操作106

4.3.1获取索引中的文档数据106

4.3.2删除索引文件中的文档数据108

4.3.3更新索引文件中的文档数据109

4.3.4对索引文件中的文档进行批量操作110

4.4信息检索112

4.4.1概述113

4.4.2multiSearch114

4.4.3查询模板115

4.4.4Query DSL概述117

4.4.5matchAllQuery117

4.4.6全文检索118

4.4.7词项检索121

4.4.8复合查询125

4.4.9跨度查询127

4.4.10特殊查询130

4.5聚合132

4.5.1Metric聚合132

4.5.2bucket聚合136

4.6对检索结果的进一步处理140

4.6.1控制每页的显示数量及排序依据140

4.6.2基于scroll分页显示检索结果140

4.7Java High Level RESTful Client和Elasticsearch DSL142

4.7.1Java High Level RESTful Client142

4.7.2Elasticsearch DSL146

4.8实例148

4.8.1在Elasticsearch中建立索引148

4.8.2连接Elasticsearch149

4.8.3信息采集与索引构建150

4.8.4搜索模块152

4.8.5推荐模块153

4.8.6聚合模块154

4.9扩展知识与阅读155

4.10本章小结156

第5章Elasticsearch配置与集群管理157

5.1Elasticsearch的部分基本配置157

5.2索引文件和查询优化160

5.3监控集群状态161

5.4控制索引文件分片与副本分配163

5.5集群管理165

5.6扩展知识与阅读166

5.7本章小结167

第6章基于Logstash的日志处理168

6.1概述169

6.2input: 处理输入的日志数据171

6.2.1处理基于file方式输入的日志信息172

6.2.2处理基于generator产生的日志信息173

6.2.3基于Filebeat处理log4j的日志信息174

6.2.4处理基于redis的日志信息176

6.2.5处理基于TCP传输的日志数据179

6.2.6处理基于UDP传输的日志数据183

6.3codec: 格式化日志数据185

6.3.1json格式185

6.3.2rubydebug格式187

6.3.3plain格式187

6.4基于filter的日志处理与转换188

6.4.1json filter189

6.4.2grok filter190

6.4.3kv filter192

6.5output: 输出日志数据195

6.5.1将处理后的日志输出到Elasticsearch中195

6.5.2将处理后的日志输出到文件中197

6.5.3将处理后的日志输出到csv文件中198

6.5.4将处理后的日志输出到redis中199

6.5.5将处理后的日志通过UDP输出201

6.5.6将处理后的日志通过TCP输出202

6.5.7将日志信息发送至Email206

6.6扩展知识与阅读208

6.7本章小结209

第7章基于Kibana的数据分析及可视化210

7.1Kibana概述211

7.2安装Kibana211

7.3使用Management组件管理配置212

7.3.1创建索引模式213

7.3.2高级设置214

7.3.3管理已保存的检索、可视化和仪表板218

7.4使用Discover组件执行查询219

7.4.1设置时间选择器219

7.4.2在索引模式中执行搜索220

7.4.3字段过滤221

7.4.4查看文档数据222

7.5使用Visualize组件创建统计图表224

7.6使用Dashboard组件创建动态仪表板226

7.6.1创建新的动态仪表板227

7.6.2打开已保存的动态仪表板228

7.6.3分享动态仪表板228

7.7使用Timelion组件创建时间线229

7.8使用Dev Tools执行命令行231

7.8.1在Console中执行命令231

7.8.2Console快捷键233

7.8.3Console设置234

7.9网站性能监控可视化应用实例234

7.9.1概述234

7.9.2使用Visualize实现可视化234

7.9.3使用Dashboard整合可视化结果238

7.10扩展知识与阅读239

7.11本章小结240

第8章基于XPack的系统运行监控241

8.1XPack概述241

8.2安装XPack242

8.3Security插件与安全性243

8.3.1身份验证机制与用户管理243

8.3.2匿名访问246

8.3.3基于域的用户认证247

8.3.4基于角色的访问权限配置248

8.3.5IP地址过滤251

8.3.6带有身份认证的TransportClient253

8.3.7带有身份认证的RESTful命令256

8.4使用Monitoring监控系统运行状态256

8.4.1系统运行状态监控256

8.4.2配置Monitoring260

8.4.3搭建独立的Monitoring集群262

8.5Alerting插件与异常事件警报263

8.5.1通过RESTful方式设置监视器264

8.5.2通过Java程序设置监视器267

8.5.3使用Watcher UI管理监视器269

8.6Reporting与报告生成270

8.6.1在程序中生成报告270

8.6.2通过监视器自动生成报告271

8.7使用Graph探索数据关联273

8.8使用Machine Learning发现数据趋势异常275

8.9使用Search Profiler分析搜索查询277

8.10使用Grok Debugger调试grok表达式279

8.11扩展知识与阅读280

8.12本章小结280

第9章基于Beats的数据解析传输281

9.1基于packetbeat的网络数据包传输282

9.1.1概述282

9.1.2安装282

9.1.3配置283

9.1.4加载索引模板285

9.1.5启动和关闭286

9.1.6使用Kibana进行可视化展示287

9.2基于Filebeat的日志传输288

9.2.1概述288

9.2.2安装和配置288

9.2.3启动和关闭291

9.2.4使用Kibana进行展示291

9.3基于metricbeat的系统指标数据传输292

9.3.1概述292

9.3.2安装和配置293

9.3.3启动和关闭294

9.3.4使用Kibana进行展示295

9.4基于winlogbeat的Windows事件日志数据传输296

9.4.1概述296

9.4.2安装297

9.4.3配置298

9.4.4启动和关闭301

9.4.5使用Kibana进行展示302

9.5基于auditbeat的用户和进程活动审计304

9.5.1概述304

9.5.2安装和配置304

9.5.3启动和关闭305

9.5.4使用Kibana进行展示306

9.6基于heartbeat的服务状态检测308

9.6.1概述308

9.6.2安装和配置308

9.6.3启动和关闭311

9.6.4使用Kibana进行展示311

9.7扩展知识与阅读313

9.8本章小结313

第10章信息检索与分析实例(一)314

10.1基于Elasticsearch的行业信息存储314

10.1.1环境准备314

10.1.2数据准备315

10.2基于Spring Boot的信息检索及Web端设计317

10.2.1创建和配置工程317

10.2.2Web页面设计319

10.3基于Logstash的日志处理327

10.3.1配置Spring Boot输出日志327

10.3.2在Logstash中进行相关配置329

10.4基于Kibana的日志分析结果可视化330

10.4.1访问量走势分析331

10.4.2查询参数比率分析333

10.4.3故障案例可视化334

10.4.4将图表集成到仪表板中335

10.5扩展知识与阅读336

10.6本章小结337

第11章信息检索与分析实例(二)338

11.1面向动态网站的信息采集339

11.1.1软件准备339

11.1.2浏览器驱动程序339

11.1.3创建索引和映像340

11.1.4导入依赖341

11.1.5数据采集342

11.2基于Spring MVC的信息检索及Web程序设计348

11.2.1创建和配置Spring MVC项目348

11.2.2前端页面设计351

11.2.3后端控制器类356

11.3基于Logstash的日志处理360

11.4基于Beats的数据传输361

11.5基于Kibana的数据可视化362

11.5.1可视化索引文件中的信息363

11.5.2对Logstash、Beats的可视化展示364

11.6基于XPack的系统监控366

11.7扩展知识与阅读369

11.8本章小结369

参考文献370


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

温馨提示:请使用泸西县图书馆的读者帐号和密码进行登录

点击获取验证码
登录