📚 《Hadoop 权威指南 (第 3 版)》纸质实体书免费送啦!

本贴最后更新于 2812 天前,其中的信息可能已经东海扬尘

** 有需要该书的朋友请回帖沟通寄送方式,谢谢!**

Hadoop 权威指南(第 3 版)

Hadoop 权威指南(第 3 版)Hadoop 权威指南(第 3 版)

作者

  • [美] Tom White

Tom White,数学王子&Hadoop 专家。身为 Apache Hadoop 提交者八年之久,Apache 软件基金会成员之一。全球知名云计算公司 Cloudera 的软件工程师。Tom 拥有英国剑桥大学数学学士学位和利兹大学科学哲学硕士学位。

译者

  • 华东师范大学数据科学与工程学院

内容简介

准备好释放数据的强大潜能了吗?借助于这本《Hadoop 权威指南》,你将学习如何使用 ApacheHadoop 构建和维护稳定性高、伸缩性强的分布式系统。本书是为程序员写的,可帮助他们分析任何大小的数据集。本书同时也是为管理员写的,帮助他们了解如何设置和运行 Hadoop 集群。

《Hadoop 权威指南(第 3 版 修订版)》通过丰富的案例学习来解释 Hadoop 的幕后机理,阐述了 Hadoop 如何解决现实生活中的具体问题。第 3 版覆盖 Hadoop 的最新动态,包括新增的 MapReduceAPI,以及 MapReduce2 及其灵活性更强的执行模型(YARN)。

目录

" 目录
第 1 章 初识 Hadoop 1
1.1 数据!数据! 1
1.2 数据的存储与分析 3
1.3 相较于其他系统的优势 4
1.3.1 关系型数据库管理系统 5
1.3.2 网格计算 7
1.3.3 志愿计算 9
1.4 Hadoop 发展简史 10
1.5 Apache Hadoop 和 Hadoop 生态系统 14
1.6 Hadoop 的发行版本 15
1.6.1 本书包含的内容 16
1.6.2 兼容性 17
第 2 章 关于 MapReduce 19
2.1 气象数据集 19
2.2 使用 Unix 工具来分析数据 21
2.3 使用 Hadoop 来分析数据 23
2.3.1 map 和 reduce 23
2.3.2 Java MapReduce 24
2.4 横向扩展 33
2.4.1 数据流 34
2.4.2 combiner 函数 37
2.4.3 运行分布式的 MapReduce 作业 39
2.5 Hadoop Streaming 40
2.5.1 Ruby 版本 40
2.5.2 Python 版本 43
2.6 Hadoop Pipes 44
第 3 章 Hadoop 分布式文件系统 49
3.1 HDFS 的设计 49
3.2 HDFS 的概念 51
3.2.1 数据块 51
3.2.2 namenode 和 datanode 52
3.2.3 联邦 HDFS 53
3.2.4 HDFS 的高可用性 54
3.3 命令行接口 56
3.4 Hadoop 文件系统 58
3.5 Java 接口 62
3.5.1 从 Hadoop URL 读取数据 63
3.5.2 通过 FileSystem API 读取数据 64
3.5.3 写入数据 68
3.5.4 目录 70
3.5.5 查询文件系统 70
3.5.6 删除数据 75
3.6 数据流 75
3.6.1 剖析文件读取 75
3.6.2 剖析文件写入 78
3.6.3 一致模型 81
3.7 通过 Flume 和 Sqoop 导入数据 83
3.8 通过 distcp 并行复制 84
3.9 Hadoop 存档 86
3.9.1 使用 Hadoop 存档工具 86
3.9.2 不足 88
第 4 章 Hadoop 的 I/O 操作 89
4.1 数据完整性 89
4.1.1 HDFS 的数据完整性 89
4.1.2 LocalFileSystem 91
4.1.3 ChecksumFileSystem 91
4.2 压缩 92
4.2.1 codec 93
4.2.2 压缩和输入分片 98
4.2.3 在 MapReduce 中使用压缩 99
4.3 序列化 102
4.3.1 Writable 接口 103
4.3.2 Writable 类 105
4.3.3 实现定制的 Writable 集合 114
4.3 序列化框架 118
4.4 Avro 121
4.4.1 Avro 数据类型和模式 122
4.4.2 内存中的序列化和反序列化 126
4.4.3 Avro 数据文件 129
4.4.4 互操作性 130
4.4.5 模式的解析 133
4.4.6 排列顺序 135
4.4.7 关于 Avro MapReduce 137
4.4.8 使用 Avro MapReduce 进行排序 141
4.4.9 其他语言的 Avro MapReduce 143
4.5 基于文件的数据结构 143
4.5.1 关于 SequenceFile 143
4.5.2 关于 MapFile 151
第 5 章 MapReduce 应用开发 157
5.1 用于配置的 API 157
5.1.1 资源合并 159
5.1.2 可变的扩展 160
5.2 配置开发环境 160
5.2.1 管理配置 162
5.2.2 辅助类 GenericOptionsParser,Tool 和 ToolRunner 165
5.3 用 MRUnit 来写单元测试 168
5.3.1 关于 Mapper 168
5.3.2 关于 Reducer 170
5.4 本地运行测试数据 171
5.4.1 在本地作业运行器上运行作业 171
5.4.2 测试驱动程序 175
5.5 在集群上运行 176
5.5.1 打包作业 177
5.5.2 启动作业 179
5.5.3 MapReduce 的 Web 界面 181
5.5.4 获取结果 184
5.5.5 作业调试 185
5.5.6 Hadoop 日志 190
5.5.7 远程调试 192
5.6 作业调优 193
5.7 MapReduce 的工作流 196
5.7.1 将问题分解成 MapReduce 作业 197
5.7.2 关于 JobControl 198
5.7.3 关于 Apache Oozie 199
第 6 章 MapReduce 的工作机制 205
6.1 剖析 MapReduce 作业运行机制 205
6.1.1 经典的 MapReduce (MapReduce 1) 206
6.1.2 YARN (MapReduce 2) 213
6.2 失败 219
6.2.1 经典 MapReduce 中的失败 219
6.2.2 YARN 中的失败 222
6.3 作业的调度 224
6.3.1 公平调度器 225
6.3.2 容量调度器 225
6.4 shuffle 和排序 226
6.4.1 map 端 226
6.4.2 reduce 端 228
6.4.3 配置调优 230
6.5 任务的执行 232
6.5.1 任务执行环境 232
6.5.2 推测执行 233
6.5.3 关于 OutputCommitters 235
6.5.4 任务 JVM 重用 237
6.5.5 跳过坏记录 238
第 7 章 MapReduce 的类型与格式 241
7.1 MapReduce 的类型 241
7.1.1 默认的 MapReduce 作业 245
7.1.2 默认的 Streaming 作业 249
7.2 输入格式 252
7.2.1 输入分片与记录 252
7.2.2 文本输入 264
7.2.3 二进制输入 268
7.2.4 多个输入 269
7.2.5 数据库输入(和输出) 270
7.3 输出格式 271
7.3.1 文本输出 271
7.3.2 二进制输出 272
7.3.3 多个输出 272
7.3.4 延迟输出 277
7.3.5 数据库输出 277
第 8 章 MapReduce 的特性 279
8.1 计数器 279
8.1.1 内置计数器 279
8.1.2 用户定义的 Java 计数器 284
8.1.3 用户定义的 Streaming 计数器 289
8.2 排序 289
8.2.1 准备 290
8.2.2 部分排序 291
8.2.3 全排序 295
8.2.4 辅助排序 299
8.3 连接 305
8.3.1 map 端连接 307
8.3.2 reduce 端连接 307
8.4 边数据分布 311
8.4.1 利用 JobConf 来配置作业 311
8.4.2 分布式缓存 311
8.5 MapReduce 库类 318
第 9 章 构建 Hadoop 集群 321
9.1 集群规范 321
9.2 集群的构建和安装 325
9.2.1 安装 Java 326
9.2.2 创建 Hadoop 用户 326
9.2.3 安装 Hadoop 326
9.2.4 测试安装 327
9.3 SSH 配置 327
9.4 Hadoop 配置 328
9.4.1 配置管理 329
9.4.2 环境设置 332
9.4.3 Hadoop 守护进程的关键属性 336
9.4.4 Hadoop 守护进程的地址和端口 341
9.4.5 Hadoop 的其他属性 343
9.4.6 创建用户帐号 346
9.5 YARN 配置 346
9.5.1 YARN 守护进程的重要属性 347
9.5.2 YARN 守护进程的地址和端口 350
9.6 安全性 352
9.6.1 Kerberos 和 Hadoop 353
9.6.2 委托令牌 355
9.6.3 其他安全性改进 356
9.7 利用基准评测程序测试 Hadoop 集群 358
9.7.1 Hadoop 基准评测程序 358
9.7.2 用户作业 361
9.8 云端的 Hadoop 361
第 10 章 管理 Hadoop 367
10.1 HDFS 367
10.1.1 永久性数据结构 367
10.1.2 安全模式 373
10.1.3 日志审计 375
10.1.4 工具 375
10.2 监控 380
10.2.1 日志 381
10.2.2 度量 382
10.2.3 Java 管理扩展(JMX) 385
10.3 维护 387
10.3.1 日常管理过程 387
10.3.2 委任和解除节点 389
10.3.3 升级 392
第 11 章 关于 Pig 397
11.1 安装与运行 Pig 398
11.1.1 执行类型 399
11.1.2 运行 Pig 程序 400
11.1.3 Grunt 401
11.1.4 Pig Latin 编辑器 401
11.2 示例 402
11.3 与数据库进行比较 405
11.4 Pig Latin 406
11.4.1 结构 407
11.4.2 语句 408
11.4.3 表达式 413
11.4.4 类型 414
11.4.5 模式 415
11.4.6 函数 420
11.4.7 宏 422
11.5 用户自定义函数 423
11.5.1 过滤 UDF 423
11.5.2 计算 UDF 427
11.5.3 加载 UDF 429
11.6 数据处理操作 432
11.6.1 数据的加载和存储 432
11.6.2 数据的过滤 433
11.6.3 数据的分组与连接 436
11.6.4 数据的排序 441
11.6.5 数据的组合和切分 442
11.7 Pig 实战 443
11.7.1 并行处理 443
11.7.2 参数代换 444
第 12 章 关于 Hive 447
12.1 安装 Hive 448
12.2 示例 450
12.3 运行 Hive 451
12.3.1 配置 Hive 452
12.3.2 Hive 服务 454
12.3.3 Metastore 456
12.4 Hive 与传统数据库相比 458
12.4.1 读时模式 vs.写时模式 458
12.4.2 更新、事务和索引 459
12.5 HiveQL 460
12.5.1 数据类型 461
12.5.2 操作与函数 463
12.6 表 464
12.6.1 托管表和外部表 465
12.6.2 分区和桶 466
12.6.3 存储格式 471
12.6.4 导入数据 477
12.6.5 表的修改 479
12.6.6 表的丢弃 480
12.7 查询数据 480
12.7.1 排序和聚集 480
12.7.2 MapReduce 脚本 481
12.7.3 连接 482
12.7.4 子查询 486
12.7.5 视图 486
12.8 用户定义函数 488
12.8.1 写 UDF 489
12.8.2 写 UDAF 491
第 13 章 关于 HBase 497
13.1 HBase 基础 497
13.2 概念 498
13.3.1 数据模型的“旋风之旅” 498
13.3.2 实现 500
13.3 安装 503
13.4 客户端 506
13.4.1 Java 506
13.4.2 Avro、REST 和 Thrift 510
13.5 示例 511
13.5.1 模式 511
13.5.2 加载数据 512
13.5.3 Web 查询 516
13.6 HBase 和 RDBMS 的比较 519
13.6.1 成功的服务 520
13.6.2 HBase 521
13.6.3 实例:HBase 在 Streamy.com 的使用 522
13.7 Praxis 524
13.7.1 版本 524
13.7.2 HDFS 525
13.7.3 用户界面 526
13.7.4 度量 526
13.7.5 模式的设计 526
13.7.6 计数器 527
13.7.7 批量加载 528
第 14 章 关于 ZooKeeper 529
14.1 安装和运行 ZooKeeper 530
14.2 示例 532
14.2.1 ZooKeeper 中的组成员关系 533
14.2.2 创建组 534
14.2.3 加入组 536
14.2.4 列出组成员 537
14.2.5 删除组 539
14.3 ZooKeeper 服务 540
14.3.1 数据模型 540
14.3.2 操作 543
14.3.3 实现 548
14.3.4 一致性 549
14.3.5 会话 552
14.3.6 状态 554
14.4 使用 ZooKeeper 来构建应用 555
14.4.1 配置服务 555
14.4.2 可复原的 ZooKeeper 应用 559
14.4.3 锁服务 563
14.4.4 更多分布式数据结构和协议 565
14.5 生产环境中的 ZooKeeper 567
14.5.1 可恢复性和性能 567
14.5.2 配置 568
第 15 章 关于 Sqoop 571
15.1 获取 Sqoop 571
15.2 Sqoop 连接器 573
15.3 一个导入的例子 573
15.4 生成代码 577
15.5 深入了解数据库导入 578
15.5.1 导入控制 580
15.5.2 导入和一致性 581
15.5.3 直接模式导入 581
15.6 使用导入的数据 581
15.7 导入大对象 585
15.8 执行导出 587
15.9 深入了解导出功能 589
15.9.1 导出与事务 590
15.9.2 导出和 SequenceFile 591
第 16 章 实例学习 593
16.1 Hadoop 在 Last.fm 的应用 593
16.1.1 Last.fm:社会音乐史上的革命 593
16.1.2 Hadoop 在 Last.fm 中的应用 593
16.1.3 用 Hadoop 制作图表 594
16.1.4 Track Statistics 程序 595
16.1.5 总结 602
16.2 Hadoop 和 Hive 在 Facebook 的应用 603
16.2.1 Hadoop 在 Facebook 的使用 603
16.2.2 虚构的使用样例 606
16.2.3 Hive 609
16.2.4 存在的问题与未来工作计划 613
16.3 Nutch 搜索引擎 615
16.3.1 背景介绍 615
16.3.2 数据结构 616
16.3.3 Nutch 系统利用 Hadoop 进行数据处理的精选实例 619
16.3.4 总结 630
16.4 Rackspace 的日志处理 631
16.4.1 要求/问题 631
16.4.2 简史 632
16.4.3 选择 Hadoop 632
16.4.4 收集和存储 632
16.4.5 对日志的 MapReduce 处理 634
16.5 关于 Cascading 640
16.5.1 字段、元组和管道 641
16.5.2 操作 644
16.5.3 Tap、Scheme 和 Flow 645
16.5.4 Cascading 实战 646
16.5.5 灵活性 650
16.5.6 Hadoop 和 Cascading 在 ShareThis 的应用 650
16.5.7 总结 655
16.6 Apache Hadoop 上万亿数量级排序 655
16.7 用 Pig 和 Wukong 探索 10 亿数量级边的网络图 659
16.7.1 社区判断 661
16.7.2 每个人都在和我说话:Twitter 回复关系图 661
16.7.3 对称链接 664
16.7.4 社区提取 666
附录 A 安装 Apache Hadoop 669
附录 B 关于 CDH 675
附录 C 准备 NCDC 气象数据 677
"

其他

  • 出版社:清华大学出版社
  • 副标题:
  • 原作名:Hadoop: The Definitive Guide,3rd Edition
  • 出版年:2015-1-1
  • 总页数:716
  • 定 价:99
  • 装 帧:平装
  • ISBN:9787302370857

关于『书单』

书单是黑客派社区的一个纸质书共享活动,所有书均来自捐赠,原则上当前的书籍持有者有义务将书寄送给需要的会员。我们鼓励你在书籍上留下笔迹,任何信息都行,让其他人可以看到一些有意思的内容也是蛮不错的 😅

共享意味着什么

一旦你共享了一本书,就会使用你的社区账号自动发一篇书籍共享帖,这意味着你做了一个承诺:将书送到需要的人手中。如果有同城的书籍需求者回帖,就面交吧!

如何参与

  1. 使用微信扫描如下二维码,进入黑客派社区小程序
    3c04bd33b54a493aa97107a94a1ae706.png
  2. 按照小程序的指引开始即可

一点思考

类似共享书籍的事情有很多人做过,比如:

  • 摆摆书架
  • 青番茄
  • 书巢
  • 丢书大作战
  • 很多社区的书籍交换

大家的出发点都是想让这个世界变得更好。黑客派的『书单』将作为长期活动持续下去,大家随时都能参与进来,让你我的生活变得更丰富有趣!

  • 书单

    『书单』是 [黑客派] 社区的纸质书共享计划第一版,目前已经下线。其升级版『链书』基于区块链的技术,实现去中心化的货币 + 去中心化的图书馆,已于 2018 年 6 上线。

    77 引用 • 638 回帖 • 493 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖 • 1 关注
  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    86 引用 • 122 回帖 • 618 关注
  • 计算机
    19 引用 • 87 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...