内容简介
Splunk是一种典型的大数据处理工具,能够地按时序对数据进行存储、索引、访问,已广泛应用在多个领域。本书是介绍如何实时处理大数据并从中获得商业价值的一本实用指南。本书通过真实的大数据分析项目,从数据导入、访问、挖掘和可视化角度全面而系统地介绍Splunk的基本概念和使用方法,以帮助读者快速掌握Splunk。
全书共16章,分为四个部分:第一部分(第1~7章)介绍Splunk的基本操作,包括利用Splunk进行数据收集、处理、分析及结果可视化等的基本操作和命令,以及使用日志文件创建数据分析报表的方法;第二部分(第8~11章)使用“航空公司准点性能数据”介绍一个典型的数据分析案例,详细讲解如何运用Splunk深度挖掘现有数据仓库,并介绍一些新的Splunk命令和实用技巧;第三部分(第12~14章)详细介绍如何收集、处理、分析推文和Foursquare的签到信息等,涵盖分析社会化媒体流数据所需的知识;第四部分(第15~16章)详细介绍如何按需求扩展Splunk,以及分布式处理和高可用性的基本概念。此外,还包括两个附录,展示Splunk的性能以及各种可用的应用程序。
目录
目 录
译者序
致谢
第1章 大数据和Splunk / 1
1.1 什么是大数据 / 1
1.2 非传统的数据处理技术 / 5
1.3 Splunk是什么 / 6
1.4 关于本书 / 7
第2章 将数据导入Splunk / 9
2.1 数据的多样性 / 9
2.2 Splunk如何处理多样化的数据 / 10
2.2.1 文件和目录 / 11
2.2.2 数据生成器 / 16
2.2.3 生成样本数据 / 17
2.2.4 网络资源 / 21
2.2.5 Windows数据 / 21
2.2.6 其他资源 / 21
2.3 应用程序和附加组件 / 21
2.4 转发器 / 26
2.5 小结 / 27
第3章 处理和分析数据 / 28
3.1 了解组合访问日志数据 / 28
3.2 搜索和分析索引数据 / 29
3.3 报表 / 35
3.3.1 使用的浏览器 / 35
3.3.2 排名前五的IP地址 / 37
3.3.3 浏览量来源的网站 / 38
3.3.4 有多少404事件 / 40
3.3.5 有多少事件包含购买行为 / 42
3.3.6 列出购买的商品 / 42
3.4 排序 / 44
3.5 过滤 / 45
3.6 添加和评估字段 / 47
3.7 聚合 / 48
3.8 小结 / 54
第4章 结果的可视化 / 55
4.1 数据可视化 / 55
4.2 Splunk是怎样处理可视化的 / 55
4.3 chart / 60
4.3.1 制作每一个主机的GET和POST事件数量的图表 / 61
4.3.2 制作每一个产品类别的购买数和浏览数的图表 / 62
4.3.3 哪个产品种类受HTTP 404错误的影响 / 63
4.3.4 MyGizmoStore.com的购买趋势 / 64
4.3.5 事务持续时间 / 66
4.4 timechart / 67
4.4.1 购买数量的产品 / 67
4.4.2 页面浏览率和购买量 / 68
4.5 使用Google Maps应用程序来可视化 / 69
4.6 Globe / 71
4.7 仪表盘 / 72
4.8 小结 / 80
第5章 定义警报 / 81
5.1 什么是警报 / 81
5.2 Splunk如何提供警报 / 81
5.2.1 基于商品销售量的警报 / 82
5.2.2 登录失败的警报 / 84
5.2.3 日志文件中关键性错误的警报 / 87
5.3 小结 / 88
第6章 网站监测 / 90
6.1 监测网站 / 90
6.2 IT运作 / 91
6.2.1 主机访问量 / 91
6.2.2 无内部访问的主机访问量 / 91
6.2.3 HTTP请求成功的流量 / 93
6.2.4 HTTP请求未成功的流量 / 93
6.2.5 返回HTTP错误状态码的页面 / 94
6.3 业务 / 96
6.3.1 区域用户统计 / 96
6.3.2 跳出率 / 97
6.3.3 独立访问者数量 / 98
6.4 小结 / 103
第7章 使用日志文件创建分析 / 104
7.1 传统的分析方法 / 104
7.2 范式变更 / 105
7.3 语义日志 / 106
7.4 日志实践 / 113
7.5 小结 / 115
第8章 航班准点率项目 / 116
小结 / 118
第9章 将航班数据导入Splunk / 119
9.1 处理CSV文件 / 119
9.1.1 航班数据 / 119
9.1.2 下载数据 / 120
9.1.3 了解航班数据 / 121
9.1.4 关于时间戳 / 123
9.1.5 将字段映射成一个时间戳 / 124
9.1.6 对所有航班数据建立索引 / 131
9.2 从关系数据库中索引数据 / 132
9.2.1 定义一个新的数据库连接 / 132
9.2.2 数据库监测 / 133
9.3 小结 / 136
第10章 分析航空公司、机场、航班和延迟 / 137
10.1 分析航空公司 / 137
10.1.1 计算航空公司的总数 / 138
10.1.2 可视化结果 / 139
10.2 分析机场 / 143
10.3 分析航班 / 146
10.4 分析延迟 / 151
10.4.1 各航空公司航班延迟情况 / 151
10.4.2 各机场航班延迟的原因 / 152
10.4.3 冬天与夏天的航班延迟情况 / 155
10.5 创建和使用宏命令 / 157
10.6 报告加速 /
摘要与插图
第1章 大数据和Splunk本章将讨论什么是大数据以及处理大数据的几种方法(包括Splunk在内)。
1.1 什么是大数据
无可否认,“大数据”已成为软硬件公司为促销产品而过度使用的术语。然而,在炒作的背后,确实蕴含着极其重要的技术趋势和极大的潜在商机。尽管人们经常把大数据与社会化媒体联系在一起,但我们将展开说明大数据远不止于此。在引入定义之前,让我们先来看一些关于大数据的事实。
回到2001年,来自麦塔集团(meta Group,2005年被高德纳公司收购的一个IT研究公司)的Doug Laney在一篇研究论文中写道,电子商务大大加速了数据管理朝3个方面的发展:数据量(volume)、速率(velocity)和多样化(variety),它们被称为大数据的3个V。正如期望的那样,不少公司在其对大数据的定义中加入了更多的V。
当提到大数据时,数据量大是第一感觉,也就是大数据的“大”。一些专家认为大数据的起点为10亿兆字节(Petabyte,PB)。随着我们产生的数据越来越多,我们相信这个起点肯定会继续增加。然而,数据量本身并不是判断大数据的指标,而另外两个指标V对大数据的定义有更直接的影响。
速率指的是数据产生的速度或者数据传输的频率。想象一下从洛杉矶高速公路上的传感器传来的数据流,或者从某些机场用于扫描和处理人脸数据的摄像机传来的数据流。此外,还可想象一下流行的电子商务网站用户单击行为所触发的数据流。
多样化则是指信息系统产生的不同数据和文件类型。想象一下iTunes商店的音乐文件(大约有2800万歌曲和超过300亿次下载),或者Netflix服务存储的电影(超过75 000部),或者纽约时报网站的文章(从1851年至今超过1300万篇),推文(每天超过5亿条推文),Foursquare用户的签到地理位置信息(每天超过500万条),以及所有包含内置计算机的系统产生的不同系统日志文件。当把这3个指标的V组合在一起时,你将开始对大数据有更完整的认识。
人们经常和大数据联系在一起的另一个特征是:数据是非结构化的。我们认为,不存在所谓的非结构化数据。我们的观点是:这个困惑来源于一个常见的认知,如果某种数据不符合预定义格式、模型或者结构,那么这种数据被视为非结构化数据。
电子邮件消息通常被当做非结构化数据的典型例子,而邮件的正文可被视为非结构化的,它部分遵循了一个良好定义的数据结构,RFC-2822规范,同时包含一组字段:From、To、Subject和Date。Twitter消息的结构也一样:消息主体或者叫推文,可被视为非结构化数据,也可被视为部分结构化的数据。
一般来说,自由文本可被视为非结构化的,因为正如之前所提到的,它不必遵循某个预定义模型。要对文本执行不同的操作,有很多种处理方法,且大多数方法都不需要预定格式。
关系数据库强制要求预定义的数据模型和模型的表中清晰定义的字段,目的是表达它们之间的关系。我们把它称为早期结构绑定(Early Structure Binding),而且在这种设计中,我们必须预先知道这些数据要回答哪些问题,这样才能设计相应的数据模式或结构来回答这些问题。
因为人们常常把大数据与富文本信息的社会化媒体流关联在一起,所以很容易理解为什么人们喜欢将“非结构化”与大数据联系在一起。在我们看来,“多结构化”也许是更准确的描述,因为大数据可以包含多种格式(3个V中的第三个V)。
把大数据局限在所谓的非结构化数据的范畴是不公平的。结构化数据同样也可以是大数据,是暂时保存在辅助存储设备中的数据,一旦装载到数据仓库进行分析即可发现它们所蕴含的巨大价值。这种数据经常被忽略的主要原因是它们的数据量,这类数据的量级通常超过了一般关系数据仓库的容量。