描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787115493712
◆ 涵盖了大数据开发者的所有大数据和Hadoop基础组件及相关组件的基本知识,使参与者有可能在一个系列书中获得对所有相关知识、新兴技术和平台的了解。
◆ 在与大数据架构、大数据应用程序开发以及与大数据实施相关的产业相关技术有着极密切关联的编程和技术领域中,锻炼自己全面的和结构化的本领。
◆ 基于场景的学习方法,通过多种有代表性的现实场景的使用和案例研究,将IT 基础知识融入现实环境,鼓励参与者积极、全面地学习和研究,实现体验式教学。
◆ 强调目标明确、基于成果的学习。每一讲都以“本讲目标”开始,该目标会进一步关联整个教程的更广泛的目标。
◆ 简明、循序渐进的编程和编码指导,清晰地解释每行代码的基本原理。
◆ 强调高效、实用的过程和技术,帮助参与者深入理解巧妙且符合道德伦理的专业实践及其对业务的影响。
大数据是当今科技行业的流行语之一。全世界的企业都已经意识到可用的大量数据的价值,并尽*努力来管理和分析数据、发挥其作用,以建立战略和发展竞争优势。与此同时,这项技术的出现,导致了各种新的和增强的工作角色的演变。
“大数据开发者权威教程”系列的目标是培养新一代的国际化全能大数据程序员、开发者和技术专家,使其熟悉大数据的相关工具、平台和架构,帮助企业有效地存储、管理并处理海量和多样的数据。同时,本书还有助于读者了解如何有效地整合、实现、定制和管理大数据基础架构。
本系列旨在为读者提供处理大数据的技术、存储、处理、管理和安全基础架构方面的技能,丰富读者与Hadoop 及其组件工具协同工作的经验,并使其可以开发MapReduce和Pig程序,操纵分布式文件,以及了解支持MapReduce程序的API等。读者同时可以熟悉一些流行的Hadoop 商业发行版系统,如Cloudera、Hortonworks和Greenplum等。*后通过一个完整的项目介绍,使读者能够开发一个集成的大数据应用程序。
本系列共两卷,第1卷“大数据技术与编程基础”包含4 个模块,涉及大数据入门,管理大数据生态系统,使用HDFS 和MapReduce 存储和处理数据,利用Hadoop工具(如Hive、Pig 和Oozie等)提升效率;第2卷“NoSQL、Hadoop组件及大数据实施”包含3个模块,涉及ZooKeeper、Sqoop、Flume、YARN 和Storm等额外的Hadoop工具,如何利用NoSQL和Hadoop实现实时、安全和云,以及Hadoop商业发行版和管理工具简介。
本书为第2卷,共3个模块,分别介绍Hadoop工具(如ZooKeeper、Sqoop、Flume、YARN和Storm等),利用NoSQL和Hadoop完成实时、安全和云的相关工作,以及Hadoop商业发行版和管理工具(如Cloudera、Hortonworks、Greenplum Pivotal HD等),*后介绍几个实用软件的功能、指南和安装步骤。
本书适用于想成为大数据开发人员以及所有对大数据开发感兴趣的技术人员和决策者阅读。
模块1 额外的Hadoop工具:ZooKeeper、Sqoop、Flume、YARN和Storm
第1讲 用ZooKeeper进行分布式处理协调 3
1.1 ZooKeeper简介 4
1.1.1 ZooKeeper的好处 4
1.1.2 ZooKeeper术语 6
1.1.3 ZooKeeper命令行界面(CLI) 7
1.2 安装和运行ZooKeeper 9
1.2.1 支持的平台 9
1.2.2 所需的软件 9
1.2.3 单服务器的安装 9
1.3 使用ZooKeeper 10
1.4 ZooKeeper应用程序 12
1.4.1 FS爬取 13
1.4.2 Katta 14
1.4.3 Yahoo!消息代理(YMB) 14
1.5 使用ZooKeeper构建应用程序 15
1.5.1 Exec.java 15
1.5.2 处理事件 17
1.5.3 监控数据 19
1.5.4 实现屏障和生产者-消费者队列 22
练习 30
备忘单 33
第2讲 利用Sqoop有效地传输批量数据 34
2.1 Sqoop简介 35
2.1.1 Sqoop中的工作流 36
2.1.2 Sqoop的特性 36
2.2 使用Sqoop 1 37
2.3 用Sqoop导入数据 41
2.3.1 导入完整的表 41
2.3.2 用HBase Sqoop导入带有复合键的表 42
2.3.3 指定目标目录 43
2.3.4 导入选择的行 43
2.3.5 密码保护 44
2.3.6 用不同的文件格式导入数据 44
2.3.7 导入数据压缩 45
2.4 控制并行 45
2.5 编码NULL值 47
2.6 将数据导入Hive表 47
2.7 将数据导入HBase 47
2.7.1 使用自由形式查询 48
2.7.2 重命名Sqoop作业 48
2.8 导出数据 49
2.8.1 批量导出 50
2.8.2 原子导出 50
2.9 将数据导出至列的子集 50
2.10 Sqoop中的驱动程序和连接器 51
2.10.1 驱动程序 51
2.10.2 连接器 52
2.10.3 连接到数据库 52
2.11 Sqoop架构概览 54
2.12 Sqoop 2 55
2.12.1 Sqoop 2的优势 56
2.12.2 易于扩展 56
2.12.3 安全 57
练习 58
备忘单 60
第3讲 Flume 62
3.1 Flume简介 63
3.1.1 Flume架构 64
3.1.2 流可靠性 66
3.2 Flume配置文件 66
3.2.1 流定义 67
3.2.2 配置单个组件 67
3.2.3 在代理中添加多个流 68
3.2.4 配置多代理流 69
3.2.5 配置流扇出 70
3.3 设置Flume 71
3.3.1 安装Flume 71
3.3.2 配置Flume代理 72
3.3.3 数据消费 74
3.4 构建Flume 77
3.4.1 获得源点 77
3.4.2 编译/测试Flume 77
3.4.3 开发自定义组件 77
练习 90
备忘单 92
第4讲 超越MapReduce—YARN 94
4.1 YARN简介 95
4.2 为什么用YARN 96
4.2.1 提高可扩展性 96
4.2.2 效率 97
4.2.3 集群共享 97
4.3 YARN生态系统 98
4.3.1 YARN架构 99
4.3.2 资源 100
4.3.3 资源管理器 101
4.3.4 ApplicationMaster 103
4.3.5 YARN的局限性 106
4.4 YARN API例子 107
4.4.1 YARN应用程序剖析 107
4.4.2 客户端 108
4.4.3 把它们整合到一起 115
4.5 Mesos和YARN的比较 116
4.5.1 Mesos简介 116
4.5.2 Mesos和Hadoop 118
练习 120
备忘单 122
第5讲 Storm on YARN 124
5.1 Storm和Hadoop 125
5.2 Storm简介 126
5.2.1 Storm架构 126
5.2.2 Storm应用剖析 129
5.3 Storm API 132
5.3.1 spout 132
5.3.2 bolt 134
5.4 Storm on YARN 134
5.4.1 Storm on YARN架构 135
5.4.2 Storm on YARN的局限性 136
5.5 安装Storm on YARN 136
5.5.1 先决条件 136
5.5.2 安装步骤 137
5.5.3 排错 138
5.5.4 管理YARN on Storm 138
5.6 Storm on YARN的例子 139
5.6.1 传感器数据spout 139
5.6.2 仪表盘bolt 140
5.6.3 HDFS日志记录器bolt 142
5.6.4 主程序 144
5.6.5 运行示例 146
练习 148
备忘单 151
模块2 利用NoSQL和Hadoop:实时、安全和云
第1讲 Hello NoSQL 155
1.1 看两个简单的例子 156
1.1.1 持久化偏好数据的一个简单集合——MongoDB 156
1.1.2 存储汽车品牌和型号数据——Apache Cassandra 162
1.2 利用语言绑定进行工作 171
1.2.1 MongoDB的驱动程序 171
1.2.2 初识Thrift 174
1.3 存储和访问数据 177
1.4 在MongoDB中存储和访问数据 178
1.5 在HBase中存储和访问数据 185
1.6 在Apache Cassandra中存储和访问数据 189
1.7 NoSQL数据存储的语言绑定 191
1.7.1 用Thrift进行诊断 191
1.7.2 Java的语言绑定 191
1.7.3 PHP的语言绑定 194
练习 195
备忘单 198
第2讲 使用NoSQL 199
2.1 创建记录 200
2.2 访问数据 213
2.2.1 访问来自MongoDB的文档 213
2.2.2 访问来自HBase的数据 214
2.2.3 查询Redis 215
2.3 更新和删除数据 216
2.4 MongoDB查询语言的能力 217
2.4.1 加载MovieLens数据 219
2.4.2 获取评级数据 221
2.4.3 MongoDB中的MapReduce 224
2.5 访问来自HBase这样的面向列的数据库的数据 228
练习 230
备忘单 234
第3讲 Hadoop安全 236
3.1 Hadoop安全挑战 238
3.2 认证 239
3.2.1 Kerberos认证 239
3.2.2 Kerberos RPC 244
3.2.3 基于Web的控制台的Kerberos 245
3.3 委托安全凭证 248
3.4 授权 253
3.4.1 HDFS文件权限 253
3.4.2 服务级别授权 257
3.4.3 作业授权 260
练习 261
备忘单 263
第4讲 在AWS上运行Hadoop应用程序 265
4.1 开始了解AWS 266
4.2 在AWS上运行Hadoop的选项 267
4.2.1 使用EC2实例的自定义安装 267
4.2.2 弹性MapReduce 268
4.3 了解EMR-Hadoop的关系 269
4.3.1 EMR架构 270
4.3.2 使用S3存储 271
4.3.3 化地利用EMR 272
4.3.4 使用CloudWatch和其他AWS组件 274
4.3.5 访问和使用EMR 274
4.4 使用AWS S3 280
4.4.1 了解桶的用法 280
4.4.2 利用控制台的内容浏览 282
4.4.3 编程访问S3中的文件 283
4.4.4 使用MapReduce上传多个文件至S3 294
4.5 自动化EMR作业流的创建和作业执行 296
4.6 组织协调EMR中作业的执行 301
4.6.1 使用EMR集群上的Oozie 301
4.6.2 AWS简单工作流 303
4.6.3 AWS数据管道 304
练习 306
备忘单 309
第5讲 实时Hadoop 311
5.1 实时Hadoop应用 312
5.2 使用HBase实现实时应用 313
5.2.1 将HBase用作照片管理系统 315
5.2.2 将HBase用作Lucene的后端 322
5.3 使用专门的实时Hadoop查询系统 342
5.3.1 Apache Drill 344
5.3.2 Impala 345
5.3.3 将实时查询系统与MapReduce比较 347
5.4 使用基于Hadoop的事件处理系统 347
5.4.1 HFlame 348
5.4.2 Storm 350
5.4.3 将事件处理与MapReduce作比较 352
练习 353
备忘单 356
模块3 Hadoop商业发行版和管理工具
第1讲 大数据简介 359
1.1 Cloudera基础 360
1.1.1 包含Apache Hadoop的Cloudera发行版 360
1.1.2 Cloudera管理器 361
1.1.3 Cloudera标准版 362
1.1.4 Cloudera企业版 363
1.2 Cloudera管理器简介 365
1.3 Cloudera管理器的管理控制台 367
1.3.1 启动并登录管理控制台 370
1.3.2 主页 370
1.4 添加和管理服务 371
1.4.1 添加新服务 371
1.4.2 启动服务 372
1.4.3 停止服务 372
1.4.4 重启服务 373
1.5 使用Cloudera管理器的业务案例 373
1.6 Cloudera管理器的安装要求 374
练习 375
备忘单 377
第2讲 Cloudera上的Hive和Cloudera管理 379
2.1 Apache Hive简介 380
2.1.1 Hive特性 380
2.1.2 HiveQL 380
2.2 Hive服务 381
2.2.1 Hive元数据服务器 382
2.2.2 Hive网关 382
2.2.3 升级Cloudera管理器 382
2.3 为Hive元存储配置模式 383
2.3.1 嵌入模式 383
2.3.2 本地模式 384
2.3.3 远程模式 385
2.4 配置Hive元存储 386
2.4.1 Red Hat操作系统 386
2.4.2 SLES操作系统 388
2.4.3 Debian/Ubuntu操作系统 388
2.5 为Hive设置Cloudera Manager 4.5 389
2.6 Hive复制 391
练习 394
备忘单 396
第3讲 Hortonworks和Greenplum Pivotal HD 397
3.1 Hortonworks数据平台 398
3.1.1 核心服务 400
3.1.2 数据服务 400
3.1.3 操作服务 401
3.2 系统需求和环境 402
3.2.1 系统需求 402
3.2.2 构建一个受支持的环境 404
3.3 安装HDP 405
3.4 使用Talend Open Studio 409
3.4.1 安装Talend Open Studio 410
3.4.2 将数据导入Talend Open Studio 411
3.4.3 执行数据分析 413
3.5 Greenplum Pivotal HD 417
练习 420
备忘单 422
第4讲 IBM InfoSphere BigInsights和MapR 424
4.1 InfoSphere BigInsights简介 425
4.1.1 Apache Hadoop发行版的InfoSphere BigInsights组件 426
4.1.2 额外的Hadoop技术 427
4.1.3 文本分析 428
4.1.4 IBM Big SQL服务器 428
4.1.5 InfoSphere BigInsights控制台 428
4.1.6 InfoSphere BigInsights的Eclipse工具 429
4.2 安装准备 430
4.2.1 复核系统需求 431
4.2.2 选择一个用户 431
4.2.3 配置浏览器 432
4.2.4 下载InfoSphere BigInsights 437
4.2.5 完成常见先决条件的任务 437
4.3 安装InfoSphere BigInsights 440
4.4 MapR简介 442
练习 445
备忘单 447
第5讲 应聘准备 449
5.1 大数据开发者需要的关键技术工具和框架 451
5.2 大数据开发者的工作角色和职责 452
5.3 大数据开发者职业机会领域 453
评论
还没有评论。