由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
正版 Hadoop应用架构 [美]Mark Grover,[美]特德·马拉斯卡,[美]乔
¥ ×1
译者序 xiii
序 xv
前言 xvii
第一部分 考虑Hadoop 应用的架构设计
第1章 Hadoop 数据建模 2
1.1 数据存储选型 3
1.1.1 标准文件格式 4
1.1.2 Hadoop 文件类型 5
1.1.3 序列化存储格式 7
1.1.4 列式存储格式 8
1.1.5 压缩 10
1.2 HDFS 模式设计 12
1.2.1 文件在HDFS 中的位置 13
1.2.2 高级HDFS 模式设计 14
1.2.3 HDFS 模式设计总结 16
1.3 HBase 模式设计 17
1.3.1 行键 17
1.3.2 时间戳 19
1.3.3 hop 20
1.3.4 表和Region 21
1.3.5 使用列 22
1.3.6 列簇 23
1.3.7 TTL 23
1.4 元数据管理 24
1.4.1 什么是元数据 24
1.4.2 为什么元数据至关重要 25
1.4.3 元数据的存储位置 25
1.4.4 元数据管理举例 26
1.4.5 Hive metastore 与HCatalog 的局限性 26
1.4.6 其他存储元数据的方式 27
1.5 结论 28
第2章 Hadoop 数据移动 29
2.1 数据采集考量 29
2.1.1 数据采集的时效性 30
2.1.2 增量更新 31
2.1.3 访问模式 32
2.1.4 数据源系统及数据结构 33
2.1.5 变换 35
2.1.6 网络瓶颈 36
2.1.7 网络安全性 36
2.1.8 被动推送与主动请求 36
2.1.9 错误处理 37
2.1.10 复杂度 38
2.2 数据采集选择 38
2.2.1 文件传输 38
2.2.2 文件传输与其他采集方法的考量 41
2.2.3 Sqoop:Hadoop 与关系数据库的批量传输.41
2.2.4 Flume:基于事件的数据收集及处理 46
2.2.5 Kafka 53
2.3 数据导出 57
2.4 小结 58
第3章 Hadoop 数据处理 59
3.1 MapReduce 60
3.1.1 MapReduce 概述 60
3.1.2 MapReduce 示例 66
3.1.3 MapReduce 使用场景 71
3.2 Spark.72
3.2.1 Spark 概述 72
3.2.2 Spark 组件概述 73
3.2.3 Spark 基本概念 73
3.2.4 Spark 的优点 76
3.2.5 Spark 示例 77
3.2.6 Spark 使用场景 79
3.3 抽象层 80
3.3.1 Pig 81
3.3.2 Pig 示例 81
3.3.3 Pig 使用场景 83
3.4 Crunch 84
3.4.1 Crunch 示例 85
3.4.2 Crunch 使用场景 88
3.5 Cascading 89
3.5.1 Cascading 示例 89
3.5.2 Cascading 使用场景 92
3.6 Hive 92
3.6.1 Hive 概述 92
3.6.2 Hive 示例 93
3.6.3 Hive 使用场景 97
3.7 Impala 98
3.7.1 Impala 概述 98
3.7.2 面向高速查询的设计 99
3.7.3 Impala 示例 101
3.7.4 Impala 使用场景 102
3.8 小结 102
第4章 Hadoop 数据处理通用范式 104
4.1 模式一:依主键移除重复记录 104
4.1.1 去重示例的测试数据生成 105
4.1.2 代码示例:使用Scala 实现Spark 去重 106
4.1.3 代码示例:使用SQL 实现去重 108
4.2 模式二:数据开窗分析 108
4.2.1 生成开窗分析的示例数据 109
4.2.2 代码示例:使用Spark 分析数据的高峰和低谷 110
4.2.3 代码示例:使用SQL 分析数据的高峰和低谷 113
4.3 模式三:基于时间序列的更新 115
4.3.1 利用HBase 的版本特性 116
4.3.2 以记录主键与开始时间作HBase 的行键 116
4.3.3 重写HDFS 数据更新整个表 116
4.3.4 利用HDFS 上的分区存储当前记录和历史记录 117
4.3.5 生成时间序列的示例数据 117
4.3.6 代码示例:使用Spark 更新时间序列数据 118
4.3.7 代码示例:使用SQL 更新时间序列数据 120
4.4 小结 123
第5章 Hadoop 图处理124
5.1 什么是图 124
5.2 什么是图处理 126
5.3 分布式系统中的图处理 127
5.3.1 块同步并行模型 127
5.3.2 BSP 举例 128
5.4 Giraph 129
5.4.1 数据的输入和分片 130
5.4.2 使用BSP 批处理图 132
5.4.3 将图回写磁盘 136
5.4.4 整体流程控制 137
5.4.5 何时选用Giraph 138
5.5 GraphX 138
5.5.1 另一种RDD 138
5.5.2 GraphX 的Pregel 接口 140
5.5.3 vprog() 142
5.5.4 sendMessage() 142
5.5.5 mergeMessage() 142
5.6 工具选择 143
5.7 小结 143
第6章 协调调度 144
6.1 工作流协调调度的必要性 144
6.2 脚本的局限性 145
6.3 企业级任务调度器及Hadoop 146
6.4 Hadoop 生态系统中的工作流框架 146
6.5 Oozie 术语 147
6.6 Oozie 概述 148
6.7 Oozie 工作流 150
6.8 工作流范式 152
6.8.1 点对点式工作流 152
6.8.2 扇出式工作流 154
6.8.3 分支决策式工作流 156
6.9 工作流参数化 159
6.10 Classpath 定义 160
6.11 调度模式 161
6.11.1 依频次调度 162
6.11.2 时间或数据触发式 162
6.12 执行工作流 166
6.13 小结 166
第7章 Hadoop 近实时处理 167
7.1 流处理 169
7.2 Apache Storm 170
7.2.1 Storm 高级架构 171
7.2.2 Storm 拓扑 172
7.2.3 元组及数据流 173
7.2.4 spout 和bolt173
7.2.5 数据流分组 174
7.2.6 Storm 应用的可靠性 175
7.2.7 仅处理一次机制 175
7.2.8 容错性 176
7.2.9 Storm 与HDFS 集成 176
7.2.10 Storm 与HBase 集成 176
7.2.11 Storm 示例:简单移动平均 177
7.2.12 Storm 评估 183
7.3 Trident 接口 183
7.3.1 Trident 示例:简单移动平均 184
7.3.2 Trident 评估 186
7.4 Spark Streaming 186
7.4.1 Spark Streaming 概述 187
7.4.2 Spark Streaming 示例:简单求和 187
7.4.3 Spark Streaming 示例:多路输入 188
7.4.4 Spark Streaming 示例:状态维护 189
7.4.5 Spark Streaming 示例:窗口函数 191
7.4.6 Spark Streaming 示例:Streaming 与ETL 代码比较 191
7.4.7 Spark Streaming 评估 193
7.5 Flume 拦截器 193
7.6 工具选择 194
7.6.1 低延迟的数据扩充、验证、报警及采集 194
7.6.2 NRT 技术、滚动平均及迭代处理 195
7.6.3 复杂数据流 196
7.7 小结 197
第二部分 案例研究
第8章 点击流分析 200
8.1 用例场景定义 200
8.2 使用Hadoop 进行点击流分析 202
8.3 设计概述 202
8.4 数据存储 203
8.5 数据采集 205
8.5.1 客户端层 208
8.5.2 收集器层 210
8.6 数据处理 212
8.6.1 数据去重 214
8.6.2 会话生成 215
8.7 数据分析 217
8.8 协调调度 218
8.9 小结 221
第9章 欺诈检测 222
9.1 持续改善 222
9.2 开始行动 223
9.3 欺诈检测系统架构需求 223
9.4 用例介绍 223
9.5 架构设计 224
9.6 客户端架构 226
9.7 画像存储及访问 226
9.7.1 缓存 227
9.7.2 HBase 数据定义 228
9.7.3 事务状态更新:通过或否决 231
9.8 数据采集 232
9.9 近实时处理与探索性分析 238
9.10 近实时处理 238
9.11 探索性分析 239
9.12 其他架构对比 240
9.12.1 Flume 拦截器 240
9.12.2 从Kafka 到Storm 或Spark Streaming 241
9.12.3 扩展的业务规则引擎 241
9.13 小结 242
第10章 数据仓库 243
10.1 使用Hadoop 构建数据仓库 245
10.2 用例场景定义 247
10.3 OLTP 模式 248
10.4 数据仓库:术语介绍 249
10.5 数据仓库的Hadoop 实践 251
10.6 架构设计 251
10.6.1 数据建模及存储 252
10.6.2 数据采集 261
10.6.3 数据处理及访问 264
10.6.4 数据聚合 268
10.6.5 数据导出 269
10.6.6 流程调度 270
10.7 小结 272
附录A Impala 中的关联 273
作者简介 277
封面介绍 278
Mark GroverApache Sentry项目管理委员会成员,《Hive编程指南》作者之一,曾参与Apache Hadoop、Apache Hive、Apache Sqoop以及Apache Flume等项目,并为Apache Bigtop项目和Apache Sentry(项目孵化中)项目贡献代码。
Ted MalaskaCloudera公司的资深解决方案架构师,致力于帮助客户更好地掌握Hadoop及其生态系统。曾任美国金融业监管局(FINRA,Financial Industry Regulatory Authority)首席架构师,指导建设了包括网络应用、服务型架构以及大数据应用在内的大量解决方案。曾为Apache Flume、Apache Avro、YARN以及Apache Pig等项目贡献代码。
Jonathan SeidmanCloudera公司的解决方案架构师,协助合作伙伴将的解决方案集成到Cloudera的软件栈中。芝加哥Hadoop用户组(Chicago Hadoop User Group)及芝加哥大数据(Chicago Big Data)的联合创始人、《Hadoop实战》技术编辑。曾任Orbiz Worldwide公司大数据团队技术主管,为最为繁忙的站点管理了承载海量数据的Hadoop集群。也曾多次在Hadoop及大数据专业会议上发言。
Gwen ShapiraCloudera公司的解决方案架构师,知名博主,拥有15年从业经验,协助客户设计高扩展性的数据架构。曾任Pythian高级顾问、Oracle ACE主管以及NoCOUG董事会成员,活跃于诸多业内会议。
本书就使用Apache Hadoop端到端数据管理方案提供专业架构指导。其他书籍大多针对Hadoop生态系统中的软件,讲解较为单一的使用方法,而本书偏重实践,在架构的高度详细阐释诸多工具如何相互配合,搭建出打磨之后的完整应用。书中提供了诸多案例,易于理解,配有详细的代码解析,知识点一目了然。
为加强训练,本书后半部分提供了详细的案例,涵盖最为常见的Hadoop应用架构。无论是设计Hadoop应用,还是将Hadoop同现有数据基础架构集成,本书都可以提供详实的参考。
使用Hadoop进行数据存储和建模的着眼点和思路
将数据输入、输出系统的*方案
MapReduce、Spark和Hive等数据处理框架介绍
数据去重、窗口分析等常见Hadoop处理模式应用
在Hadoop上采用Giraph、GraphX等图形处理工具
综合使用工作流以及Apache Oozie等调度工具
以Apache Oozie、Apache Spark Streaming和Apache Flume进行近实时流处理
点击流分析、欺诈检验和数据仓库的架构案例
Hadoop之父Doug Cutting作序。
“对Hadoop有所了解”与“能够使用Hadoop形成实际解决方案”之间的一座桥梁!
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格