新書推薦:
《
如何打造成功的商业赛事
》
售價:HK$
89.5
《
万千教育学前·透视学前儿童的发展:解析幼儿教师常问的那些问题
》
售價:HK$
58.2
《
慈悲与玫瑰
》
售價:HK$
87.4
《
启蒙的辩证:哲学的片简(法兰克福学派哲学经典,批判理论重要文本)
》
售價:HK$
76.2
《
云中记
》
售價:HK$
76.2
《
中国古代妇女生活(中国古代生活丛书)
》
售價:HK$
47.0
《
你的认知正在阻碍你
》
售價:HK$
65.0
《
我们身边的小鸟朋友:手绘观鸟笔记
》
售價:HK$
78.2
編輯推薦:
(1)内容全面而深入,既展示Splunk的强大功能,又全方位地讲解利用Splunk进行大数据分析的各种技术细节、方法和最佳实践(2)实战性强,包含大量典型大数据分析案例,为快速掌握并灵活运用Splunk从海量数据中挖掘潜在商业价值提供最佳指导
內容簡介:
Splunk是一种典型的大数据处理工具,能够高效地按时序对数据进行存储、索引、访问,已广泛应用在多个领域。本书是介绍如何实时处理大数据并从中获得商业价值的一本实用指南。本书通过真实的大数据分析项目,从数据导入、访问、挖掘和可视化角度全面而系统地介绍Splunk的基本概念和使用方法,以帮助读者快速掌握Splunk。
全书共16章,分为四个部分:第一部分(第1~7章)介绍Splunk的基本操作,包括利用Splunk进行数据收集、处理、分析及结果可视化等的基本操作和命令,以及使用日志文件创建高级数据分析报表的方法;第二部分(第8~11章)使用“航空公司准点性能数据”介绍一个典型的数据分析案例,详细讲解如何运用Splunk深度挖掘现有数据仓库,并介绍一些新的Splunk命令和实用技巧;第三部分(第12~14章)详细介绍如何收集、处理、分析推文和Foursquare的签到信息等,涵盖分析社会化媒体流数据所需的知识;第四部分(第15~16章)详细介绍如何按需求扩展Splunk,以及分布式处理和高可用性的基本概念。此外,还包括两个附录,展示Splunk的性能以及各种可用的应用程序。
關於作者:
Peter Zadrozny 资深软件技术专家,Opallios公司创始人兼首席技术官,专注于利用大数据和云技术为客户提供有价值产品。Peter还是圣荷西州立大学大数据相关课程的讲师。他曾先后在多家大中型公司担任行政和技术职务,并主导在欧洲开启WebLogic和在墨西哥启动Sun微操作系统。他在J2EE和性能工程领域有多部非常成功的著作,并且是流行开源项目Grinder的初始贡献者。
Raghu Kodali Solix公司产品管理和产品策略副总裁,负责产品愿景、产品管理、产品策略、用户设计和交互。在进入Solix之前,他在Oracle工作了12年,担任产品管理和产品策略高级经理。此外,Raghu是OracleSOA的传道者,著有《Beginning EJB 3 Application Development: From Novice to Profession》和《Oracle Information Integration, Migration and Consolidation》,同时发表多篇关于企业技术的文章。
目錄 :
目录
译者序
致谢
第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 报告加速 158
10.7 加速统计 161
10.8 小结 166
第11章 分析一个特定航班的历年数据 167
11.1 航空公司名称 167
11.1.1 字段查找自动化 172
11.1.2 从搜索中创建查找表 173
11.2 United flight 871航班 174
11.3 小结 178
第12章 分析推文 179
12.1 开发样本流 180
12.2 将推文加载到Splunk中 183
12.3 Twitter 185
12.4 最流行的单词 188
12.5 实时的Twitter趋势 191
12.6 小结 196
第13章 分析Foursquare签到信息 197
13.1 签到信息格式 198
13.2 时区注意事项 202
13.3 装载签到数据 203
13.4 分析签到信息 205
13.4.1 星期日早午餐搜索 205
13.4.2 Google地图和热门地点 209
13.4.3 地点的签到模式 211
13.4.4 地点的签到数量 212
13.4.5 分析性别活动 214
13.5 小结 217
第14章 情感分析 218
14.1 意见、观点、信仰、信念 218
14.2 商业用途 219
14.3 情感分析的技术性工作 220
14.4 情感分析应用程序 222
14.4.1 全局性的命令 223
14.4.2 挖掘情感 224
14.4.3 语言的处理 226
14.4.4 训练数据和测试数据 227
14.5 世界情绪指数项目 231
14.5.1 收集RSS摘要 232
14.5.2 将新闻标题索引到Splunk中 234
14.5.3 定义情感语料库 237
14.5.4 对结果进行可视化 240
14.6 小结 242
第15章 远程数据收集 243
15.1 转发器 243
15.1.1 流行的拓扑结构 244
15.1.2 安装转发器 246
15.2 部署服务器 248
15.2.1 配置部署服务器 250
15.2.2 配置转发器 251
15.3 部署监控 252
15.4 小结 253
第16章 可扩展性和高可用性 254
16.1 扩展Splunk 254
16.2 聚类 259
16.3 小结 264
附录A Splunk的性能 265
附录B 有用的Splunk应用程序 281
內容試閱 :
第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)。
把大数据局限在所谓的非结构化数据的范畴是不公平的。结构化数据同样也可以是大数据,特别是暂时保存在辅助存储设备中的数据,一旦装载到数据仓库进行分析即可发现它们所蕴含的巨大价值。这种数据经常被忽略的主要原因是它们的数据量,这类数据的量级通常超过了一般关系数据仓库的容量。
这里介绍一个叫高德纳的IT咨询公司在2012年提出的定义:“大数据就是高容量、高速度、和或高多样化的信息资产,需要新的处理技术来增强决策能力、原理分析和流程优化。”我们喜欢这个定义,因为它不仅关注实际数据,而且注重大数据的处理方法。本书后面的章节将对这个定义进行更详细的介绍。
为了提高我们对事物的理解能力,我们还喜欢将大数据分类。在我们看来,大数据可分成两个大类:人类产生的数据足迹和机器自动生成的数据。随着互联网活动的持续增加,我们的数字足迹也持续增长。尽管我们每天与数字系统互动,但是大部分人没有意识到哪怕是琐碎的单击或交互都会留下很多信息。在了解互联网相关的统计数据前,我们必须承认,我们唯一熟悉的大数字是麦当劳的口号“亿万招待”以及偶尔曝光的美国政客谈论的万亿级的预算和赤字。为了给读者一个认识,下面展示一小部分互联网统计数据,用以说明网络活动所产生的数据量。我们很清楚,当我们写下这些数据的那一刻它们就已成为旧数据,但是它们的确存在:
到2013年2月为止,Facebook已经有超过10亿用户,其中每天活跃的用户有6.18亿。他们每天分享25亿条消息并且“喜欢”其他27亿条消息,每天产生超过500TB的新数据。
在2013年3月,面向商务的社交网站LinkedIn拥有超过2亿成员,并以每秒2个新成员的速度增长,在2012年其用户群共进行了57亿次职业相关的搜索。
照片是个很热门的主题,这是因为大部分人的手机都带有相机功能。这些照片的数量是惊人的。Instagram用户每天上传4000万张照片,每秒“喜欢”其中8500张照片,并每秒创建大约1000条评论。在Facebook上,上传照片的速率保持在每天3亿张,一个月将产生70PB数据。到2013年1月为止,Facebook已经存储了2400亿张照片。
Twitter有5亿用户,并以每天15万人的速度增长,其中有2亿活跃用户。在2012年10月,Twitter每天会产生5亿条推文。
Foursquare在2013年1月庆祝其签到数量达到30亿,每天大约有来自2500万名用户产生的500万次签到,这些用户创建了3000万条消息。
在博客方面,一个叫做WordPress的热门博客平台在2013年3月的报道称,该平台每个月产生将近4000万篇新博文和4200万条评论,并且每个月超过3.88亿用户查看超过36亿个页面。Tumblr,另外一个热门的博客平台,同样在2013年3月的报道称,其用户共创建近1亿个博客和超过440亿篇文章。在当时,Tumblr上通常一天内用户共发布7400万篇文章。
个性化网络电台Pandora报道称,在2012年他们的用户共收听了130亿小时的音乐,也就是大约总时长为13 700年时间的音乐内容。
与此类似,Netflix也宣称在2012年7月间他们的用户观看了超过10亿小时的视频,这相当于美国30%的网络流量。不仅如此,在2013年3月,YouTube也宣称说他们的视频每个月有超过40亿小时的观看量,并且每分钟上传72小时的视频。
在2013年3月,互联网上共有差不多1.45亿个互联网域名,其中大约1.08亿使用流行的顶级域名“.com”。互联网是一个非常活跃的领域,在3月21日,有167 698个域名被创建,有128 866个域名被删除,净增38 832个新域名。
在更平常的电子邮件世界,来自Mashable的Bob Al-Greene称,在2012年11月, 每天有超过1440亿封电子邮件被发送,其中大约61%来自企业。领先的电子邮件服务是Gmail,它拥有4.25亿活跃用户。
回顾这些统计信息,人类网络行为产生的数据足迹毫无疑问是巨大的。我们能快速从中看出3个V,为了让读者了解大数据如何影响经济,我们来分享一个来自基于用户评论的网站Yelp在2013年1月(当时他们有1亿个独立访客和超过100万条评论)发布的公告:“Yelp的企业主的调查报告称,平均而言,所有受调查类别中的顾客第一次访问Yelp时消费101.59美元。这些花费的来源可以从雇佣一个盖房顶的人到买一个新床垫,甚至可以在早晨买一杯咖啡。如果这1亿个独立访问者1月份在本地商家每人消费100美元,那么Yelp将会给本地商业带来超过100亿美元的影响。”
我们不会拿互联网环境下每天生活中的每一分钟或每一秒的统计数据来烦你。然而,举几个相关的大数据的例子有助于巩固这个概念。当我们访问Amazon网站或者在Netflix选择电影时,所得到的推荐基于大数据分析,沃尔玛也采用同样的方法了解一个区域的消费者偏好并根据此分析来安排库存。现在,你一定对人类数据足迹的大数据量有了很好的认识,并清楚认识到这些数据对经济和社会产生的影响。社会化媒体只是大数据的一部分。
大数据的第二个分类是机器数据。人类的数字化生活需要大量的防火墙、负载平衡器、路由器、转换器和电脑来支持。所有这些系统都会产生日志文件,从安全和审计的日志文件到描述网站访问者行为的网站日志文件,包括臭名昭著并被抛弃的购物车功能。
要计算出需要多少服务器才能支持人类产生的数字足迹几乎不可能,因为所有的公司都对其服务器数量保密。许多专家试图根据用电量(根据某些公司愿意公布的电源使用效率指标)对最有名的公司,例如Google、Facebook和Amazon,来计算它们拥有的服务器数量。利用这个方法,James Hamilton在2012年8月发表的一篇博文中推测,Facebook大约有180 900台服务器,Google有超过100万台服务器。其他专家表示,在2012年3月Amazon大约有5亿台服务器。2012年9月,《纽约时报》刊登了一篇煽动性质的文章,声称在美国有成千上万的数据中心,它们的耗电量大约占美国总耗电量的2%,但是这2%的耗电量中有90%或更多被浪费,因为很多服务器实际上没有使用。
我们只能猜测,全世界处于工作状态的服务器数量在百万台左右。当再加上所有其他的典型数据中心基础设施组件,如防火墙、负载平衡器、路由器、交换机和其他也产生日志文件的组件,我们可以看到支撑我们数字足迹的基础设施所产生的日志格式的机器数据量是巨大的。
有趣的是,在不久前,大多数包含了机器数据的日志文件都大半被人们忽略。这些日志文件都是包含有用数据的金矿,因为它们包含对IT和商业活动的重要情报,因为这些日志文件忠实地记录了客户活动和习惯以及产品和服务的使用情况。上述日志文件使得公司的端到端业务变得透明化,可以用来改善客户服务,确保系统安全,也可以帮助系统设计满足法律法规的要求。更重要的是,日志文件可以帮助我们找到已经发生的问题,并且可以协助预测相同的问题未来将发生的时间。
到目前为止除了我们介绍的机器数据外,还有用于实时采集数据的传感器。大多数工业设备都包含能产生大量数据的内置传感器。例如,在燃气机中用于发电的一个叶片每天将产生520GB的数据,而在一个这样的燃气机中有20个叶片。一个跨大西洋的航班飞机能产生几个TB的数据,这些数据可以用来简化维护操作,提高安全性能,以及(对航空公司最重要的是)减少燃料消耗。
另一个有趣的例子是日产汽车的品牌Leaf,这是一种纯电动汽车。它有一个称为CARWINGS的系统,这个系统不仅提供传统的远程信息处理服务和一个智能手机的应用程序来控制汽车的所有功能,而且能无线传输车辆统计数据到中心服务器。每个Leaf所有者可以跟踪他们的驾驶效率,并且能和其他Leaf车主比较他们的汽车能耗数据。我们不知道日产公司从Leaf型号汽车上收集的详细信息是什么,也不清楚他们收集这些信息的用途,但是我们可以清楚地看到大数据的3个V在例子中的体现。
一般来说,传感器数据属于工业大数据类别,尽管最近“物联网”已经成为一个热门词汇,用来描述带传感器的设备构建的联网世界,世界上从电表到自动售货机有3亿多个联网设备。本书中将不会涉及这一类的大数据,但书中描述的方法和技术可以很容易地用于工业大数据分析中。