Hadoop权威指南(第3版)

副标题:无

作   者:(美)Tom White 著,华东师范大学数据科学与工程学院 译

分类号:

ISBN:9787302370857

微信扫一扫,移动浏览光盘

简介

  准备好释放数据的强大潜能了吗?借助于这本《Hadoop权威指南》,你将学习如何使用Apache Hadoop构建和维护稳定性高、伸缩性强的分布式系统。本书是为程序员写的,可帮助他们分析任何大小的数据集。本书同时也是为管理员写的,帮助他们了解如何设置和运行Hadoop集群。  本书通过丰富的案例学习来解释Hadoop的幕后机理,阐述了Hadoop如何解决现实生活中的具体问题。第3版覆盖Hadoop的最新动态,包括新增的MapReduce API,以及MapReduce 2及其灵活性更强的执行模型(YARN)。

目录

第1章 初识Hadoop 
1.1 数据!数据! 
1.2 数据的存储与分析 
1.3 相较于其他系统的优势 
1.3.1 关系型数据库管理系统 
1.3.2 网格计算 
1.3.3 志愿计算 
1.4 Hadoop发展简史 
1.5 Apache Hadoop和Hadoop生态系统 
1.6 Hadoop的发行版本 
1.6.1 本书包含的内容 
1.6.2 兼容性 

第2章 关于MapReduce 
2.1 气象数据集 
2.2 使用Unix工具来分析数据 
2.3 使用Hadoop来分析数据 
2.3.1 map和reduce 
2.3.2 Java MapReduce 
2.4 横向扩展 
2.4.1 数据流 
2.4.2 combiner函数 
2.4.3 运行分布式的MapReduce作业 
2.5 Hadoop Streaming 
2.5.1 Ruby版本 
2.5.2 Python版本 
2.6 Hadoop Pipes 

第3章 Hadoop分布式文件系统 
3.1 HDFS的设计 
3.2 HDFS的概念 
3.2.1 数据块 
3.2.2 namenode和datanode 
3.2.3 联邦HDFS 
3.2.4 HDFS的高可用性 
3.3 命令行接口 
3.4 Hadoop文件系统 
3.5 Java接口 
3.5.1 从Hadoop URL读取数据 
3.5.2 通过FileSystem API读取数据 
3.5.3 写入数据 
3.5.4 目录 
3.5.5 查询文件系统 
3.5.6 删除数据 
3.6 数据流 
3.6.1 剖析文件读取 
3.6.2 剖析文件写入 
3.6.3 一致模型 
3.7 通过Flume和Sqoop导入数据 
3.8 通过distcp并行复制 
3.9 Hadoop存档 
3.9.1 使用Hadoop存档工具 
3.9.2 不足 

第4章 Hadoop的I/O操作 
4.1 数据完整性 
4.1.1 HDFS的数据完整性 
4.1.2 LocalFileSystem 
4.1.3 ChecksumFileSystem 
4.2 压缩 
4.2.1 codec 
4.2.2 压缩和输入分片 
4.2.3 在MapReduce中使用压缩 
4.3 序列化 
4.3.1 Writable接口 
4.3.2 Writable类 
4.3.3 实现定制的Writable集合 
4.3 序列化框架 
4.4 Avro 
4.4.1 Avro数据类型和模式 
4.4.2 内存中的序列化和反序列化 
4.4.3 Avro数据文件 
4.4.4 互操作性 
4.4.5 模式的解析 
4.4.6 排列顺序 
4.4.7 关于Avro MapReduce 
4.4.8 使用Avro MapReduce进行排序 
4.4.9 其他语言的Avro MapReduce 
4.5 基于文件的数据结构 
4.5.1 关于SequenceFile 
4.5.2 关于MapFile 

第5章 MapReduce应用开发 
5.1 用于配置的API 
5.1.1 资源合并 
5.1.2 可变的扩展 
5.2 配置开发环境 
5.2.1 管理配置 
5.2.2 辅助类GenericOptionsParser,Tool和ToolRunner 
5.3 用MRUnit来写单元测试 
5.3.1 关于Mapper 
5.3.2 关于Reducer 
5.4 本地运行测试数据 
5.4.1 在本地作业运行器上运行作业 
5.4.2 测试驱动程序 
5.5 在集群上运行 
5.5.1 打包作业 
5.5.2 启动作业 
5.5.3 MapReduce的Web界面 
5.5.4 获取结果 
5.5.5 作业调试 
5.5.6 Hadoop日志 
5.5.7 远程调试 
5.6 作业调优 
5.7 MapReduce的工作流 
5.7.1 将问题分解成MapReduce作业 
5.7.2 关于JobControl 
5.7.3 关于Apache Oozie 

第6章 MapReduce的工作机制 
6.1 剖析MapReduce作业运行机制 
6.1.1 经典的MapReduce (MapReduce 1) 
6.1.2 YARN (MapReduce 2) 
6.2 失败 
6.2.1 经典MapReduce中的失败 
6.2.2 YARN中的失败 
6.3 作业的调度 
6.3.1 公平调度器 
6.3.2 容量调度器 
6.4 shuffle和排序 
6.4.1 map端 
6.4.2 reduce端 
6.4.3 配置调优 
6.5 任务的执行 
6.5.1 任务执行环境 
6.5.2 推测执行 
6.5.3 关于OutputCommitters 
6.5.4 任务JVM重用 
6.5.5 跳过坏记录 

第7章 MapReduce的类型与格式 
7.1 MapReduce的类型 
7.1.1 默认的MapReduce作业 
7.1.2 默认的Streaming作业 
7.2 输入格式 
7.2.1 输入分片与记录 
7.2.2 文本输入 
7.2.3 二进制输入 
7.2.4 多个输入 
7.2.5 数据库输入(和输出) 
7.3 输出格式 
7.3.1 文本输出 
7.3.2 二进制输出 
7.3.3 多个输出 
7.3.4 延迟输出 
7.3.5 数据库输出 

第8章 MapReduce的特性 
8.1 计数器 
8.1.1 内置计数器 
8.1.2 用户定义的Java计数器 
8.1.3 用户定义的Streaming计数器 
8.2 排序 
8.2.1 准备 
8.2.2 部分排序 
8.2.3 全排序 
8.2.4 辅助排序 
8.3 连接 
8.3.1 map端连接 
8.3.2 reduce端连接 
8.4 边数据分布 
8.4.1 利用JobConf来配置作业 
8.4.2 分布式缓存 
8.5 MapReduce库类 

第9章 构建Hadoop集群 
9.1 集群规范 
9.2 集群的构建和安装 
9.2.1 安装Java 
9.2.2 创建Hadoop用户 
9.2.3 安装Hadoop 
9.2.4 测试安装 
9.3 SSH配置 
9.4 Hadoop配置 
9.4.1 配置管理 
9.4.2 环境设置 
9.4.3 Hadoop守护进程的关键属性 
9.4.4 Hadoop守护进程的地址和端口 
9.4.5 Hadoop的其他属性 
9.4.6 创建用户帐号 
9.5 YARN配置 
9.5.1 YARN守护进程的重要属性 
9.5.2 YARN守护进程的地址和端口 
9.6 安全性 
9.6.1 Kerberos和Hadoop 
9.6.2 委托令牌 
9.6.3 其他安全性改进 
9.7 利用基准评测程序测试Hadoop集群 
9.7.1 Hadoop基准评测程序 
9.7.2 用户作业 
9.8 云端的Hadoop 

第10章 管理Hadoop 
10.1 HDFS 
10.1.1 永久性数据结构 
10.1.2 安全模式 
10.1.3 日志审计 
10.1.4 工具 
10.2 监控 
10.2.1 日志 
10.2.2 度量 
10.2.3 Java管理扩展(JMX) 
10.3 维护 
10.3.1 日常管理过程 
10.3.2 委任和解除节点 
10.3.3 升级 

第11章 关于Pig 
11.1 安装与运行Pig 
11.1.1 执行类型 
11.1.2 运行Pig程序 
11.1.3 Grunt 
11.1.4 Pig Latin编辑器 
11.2 示例 
11.3 与数据库进行比较 
11.4 Pig Latin 
11.4.1 结构 
11.4.2 语句 
11.4.3 表达式 
11.4.4 类型 
11.4.5 模式 
11.4.6 函数 
11.4.7 宏 
11.5 用户自定义函数 
11.5.1 过滤UDF 
11.5.2 计算UDF 
11.5.3 加载UDF 
11.6 数据处理操作 
11.6.1 数据的加载和存储 
11.6.2 数据的过滤 
11.6.3 数据的分组与连接 
11.6.4 数据的排序 
11.6.5 数据的组合和切分 
11.7 Pig实战 
11.7.1 并行处理 
11.7.2 参数代换 

第12章 关于Hive 
12.1 安装Hive 
12.2 示例 
12.3 运行Hive 
12.3.1 配置Hive 
12.3.2 Hive服务 
12.3.3 Metastore 
12.4 Hive与传统数据库相比 
12.4.1 读时模式vs.写时模式 
12.4.2 更新、事务和索引 
12.5 HiveQL 
12.5.1 数据类型 
12.5.2 操作与函数 
12.6 表 
12.6.1 托管表和外部表 
12.6.2 分区和桶 
12.6.3 存储格式 
12.6.4 导入数据 
12.6.5 表的修改 
12.6.6 表的丢弃 
12.7 查询数据 
12.7.1 排序和聚集 
12.7.2 MapReduce脚本 
12.7.3 连接 
12.7.4 子查询 
12.7.5 视图 
12.8 用户定义函数 
12.8.1 写UDF 
12.8.2 写UDAF 

第13章 关于HBase 
13.1 HBase基础 
13.2 概念 
13.3.1 数据模型的“旋风之旅” 
13.3.2 实现 
13.3 安装 
13.4 客户端 
13.4.1 Java 
13.4.2 Avro、REST和Thrift 
13.5 示例 
13.5.1 模式 
13.5.2 加载数据 
13.5.3 Web查询 
13.6 HBase和RDBMS的比较 
13.6.1 成功的服务 
13.6.2 HBase 
13.6.3 实例:HBase在Streamy.com的使用 
13.7 Praxis 
13.7.1 版本 
13.7.2 HDFS 
13.7.3 用户界面 
13.7.4 度量 
13.7.5 模式的设计 
13.7.6 计数器 
13.7.7 批量加载 

第14章 关于ZooKeeper 
14.1 安装和运行ZooKeeper 
14.2 示例 
14.2.1 ZooKeeper中的组成员关系 
14.2.2 创建组 
14.2.3 加入组 
14.2.4 列出组成员 
14.2.5 删除组 
14.3 ZooKeeper服务 
14.3.1 数据模型 
14.3.2 操作 
14.3.3 实现 
14.3.4 一致性 
14.3.5 会话 
14.3.6 状态 
14.4 使用ZooKeeper来构建应用 
14.4.1 配置服务 
14.4.2 可复原的ZooKeeper应用 
14.4.3 锁服务 
14.4.4 更多分布式数据结构和协议 
14.5 生产环境中的ZooKeeper 
14.5.1 可恢复性和性能 
14.5.2 配置 

第15章 关于Sqoop 
15.1 获取Sqoop 
15.2 Sqoop连接器 
15.3 一个导入的例子 
15.4 生成代码 
15.5 深入了解数据库导入 
15.5.1 导入控制 
15.5.2 导入和一致性 
15.5.3 直接模式导入 
15.6 使用导入的数据 
15.7 导入大对象 
15.8 执行导出 
15.9 深入了解导出功能 
15.9.1 导出与事务 
15.9.2 导出和SequenceFile 

第16章 实例学习 
16.1 Hadoop 在Last.fm的应用 
16.1.1 Last.fm:社会音乐史上的革命 
16.1.2 Hadoop在Last.fm中的应用 
16.1.3 用Hadoop制作图表 
16.1.4 Track Statistics程序 
16.1.5 总结 
16.2 Hadoop和Hive在Facebook的应用 
16.2.1 Hadoop在Facebook的使用 
16.2.2 虚构的使用样例 
16.2.3 Hive 
16.2.4 存在的问题与未来工作计划 
16.3 Nutch搜索引擎 
16.3.1 背景介绍 
16.3.2 数据结构 
16.3.3 Nutch系统利用Hadoop进行数据处理的精选实例 
16.3.4 总结 
16.4 Rackspace的日志处理 
16.4.1 要求/问题 
16.4.2 简史 
16.4.3 选择Hadoop 
16.4.4 收集和存储 
16.4.5 对日志的MapReduce处理 
16.5 关于Cascading 
16.5.1 字段、元组和管道 
16.5.2 操作 
16.5.3 Tap、Scheme和Flow 
16.5.4 Cascading实战 
16.5.5 灵活性 
16.5.6 Hadoop和Cascading在ShareThis的应用 
16.5.7 总结 
16.6 Apache Hadoop上万亿数量级排序 
16.7 用Pig和Wukong探索10亿数量级边的网络图 
16.7.1 社区判断 
16.7.2 每个人都在和我说话:Twitter回复关系图 
16.7.3 对称链接 
16.7.4 社区提取 

附录A 安装Apache Hadoop 
附录B 关于CDH 
附录C 准备NCDC气象数据 

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Hadoop权威指南(第3版)
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon