精通Hadoop pdf

图书网 2018年9月5日11:38:35
评论
2.8K

Hadoop是大数据处理的同义词。Hadoop的编程模型简单,“一次编码,任意部署”,且生态圈日益完善,已成为一个可供不同技能水平的程序员共同使用的全方位平台。今 天,面临着处理和分析大数据的任务,Hadoop成了理所当然的工具。Hadoop 2.0扩展了羽翼,能覆盖各种类型的应用模式,并解决更大范围的问题。

本书是一本循序渐进的指导手册,重点介绍了Hadoop的高 级概念和特性。内容涵盖了Hadoop 2.X版的改进,MapReduce、Pig和Hive等的优化及其高 级特性,Hadoop 2.0的专属特性(如YARN和HDFS联合),以及如何使用Hadoop 2.0版本扩展Hadoop的能力。

如果你想拓展自己的Hadoop知识和技能,想应对具有挑战性的数据处理问题,想让Hadoop作业、Pig脚本和Hive查询运行得更快,或者想了解升级Hadoop的好处,那么本书便是你的不二选择。

通过阅读本书,你将能够:

理解从Hadoop 1.0到Hadoop 2.0的变化

定制和优化Hadoop 2.0中的MapReduce作业

探究Hadoop I/O和不同的数据格式

深入学习YARN和Storm,并通过YARN集成Hadoop和Storm

基于亚马逊Elastic MapReduce部署Hadoop

探究HDFS替代品,学习HDFS联合

掌握Hadoop安全方面的主要内容

使用Mahout和RHadoop进行Hadoop数据分析

精通Hadoop 内容简介

这本高阶教程将通过大量示例帮助你精通Hadoop,掌握Hadoop实践和技巧。主要内容包括:Hadoop MapReduce、Pig 和Hive 优化策略,YARN 审读剖析,如何利用Storm,等等。如果你熟悉Hadoop,并想将自己的技能再提高一个层次,本书是你的不二之选。

精通Hadoop 目录

第1章 Hadoop 2.X

1.1 Hadoop的起源

1.2 Hadoop的演进

1.3 Hadoop 2.X

1.3.1 Yet Another Resource Negotiator(YARN)

1.3.2 存储层的增强

1.3.3 支持增强

1.4 Hadoop的发行版

1.4.1 选哪个Hadoop发行版

1.4.2 可用的发行版

1.5 小结

第2章 MapReduce进阶

2.1 MapReduce输入

2.1.1 InputFormat类

2.1.2 InputSplit类

2.1.3 RecordReader类

2.1.4 Hadoop的“小文件”问题

2.1.5 输入过滤

2.2 Map任务

2.2.1 dfs.blocksize属性

2.2.2 中间输出结果的排序与溢出

2.2.3 本地reducer和Combiner

2.2.4 获取中间输出结果——Map侧

2.3 Reduce任务

2.3.1 获取中间输出结果——Reduce侧

2.3.2 中间输出结果的合并与溢出

2.4 MapReduce的输出

2.5 MapReduce作业的计数器

2.6 数据连接的处理

2.6.1 Reduce侧的连接

2.6.2 Map侧的连接

2.7 小结

第3章 Pig进阶

3.1 Pig对比SQL

3.2 不同的执行模式

3.3 Pig的复合数据类型

3.4 编译Pig脚本

3.4.1 逻辑计划

3.4.2 物理计划

3.4.3 MapReduce计划

3.5 开发和调试助手

3.5.1 DESCRIBE命令

3.5.2 ExPLAIN命令

3.5.3 ILLUSTRATE命令

3.6 Pig操作符的高级特性

3.6.1 FOREACH操作符进阶

3.6.2 Pig的特殊连接

3.7 用户定义函数

3.7.1 运算函数

3.7.2 加载函数

3.7.3 存储函数

3.8 Pig的性能优化

3.8.1 优化规则

3.8.2 Pig脚本性能的测量

3.8.3 Pig的Combiner

3.8.4 Bag数据类型的内存

3.8.5 Pig的reducer数量

3.8.6 Pig的multiquery模式

3.9 最佳实践

3.9.1 明确地使用类型

3.9.2 更早更频繁地使用投影

3.9.3 更早更频繁地使用过滤

3.9.4 使用LIMIT操作符

3.9.5 使用DISTINCT操作符

3.9.6 减少操作

3.9.7 使用Algebraic UDF

3.9.8 使用AccumulatorUDF

3.9.9 剔除数据中的空记录

3.9.10 使用特殊连接

3.9.11 压缩中间结果

3.9.12 合并小文件

3.10 小结

第4章 Hive进阶

4.1 Hive架构

4.1.1 Hive元存储

4.1.2 Hive编译器

4.1.3 Hive执行引擎

4.1.4 Hive的支持组件

4.2 数据类型

4.3 文件格式

4.3.1 压缩文件

4.3.2 ORC文件

4.3.3 Parquet文件

4.4 数据模型

4.4.1 动态分区

4.4.2 Hive表索引

4.5 Hive查询优化器

4.6 DML进阶

4.6.1 GROUP BY操作

4.6.2 ORDER BY与SORT BY

4.6.3 JOIN类型

4.6.4 高级聚合

4.6.5 其他高级语句

4.7 UDF、UDAF和UDTF

4.8 小结

第5章 序列化和Hadoop I/O

5.1 Hadoop数据序列化

5.1.1 Writable与WritableComparable

5.1.2 Hadoop与Java序列化的区别

5.2 Avro序列化

5.2.1 Avro与MapReduce

5.2.2 Avro与Pig

5.2.3 Avro与Hive

5.2.4 比较Avro与Protocol Buffers/Thrift

5.3 文件格式

5.3.1 Sequence文件格式

5.3.2 MapFile格式

5.3.3 其他数据结构

5.4 压缩

5.4.1 分片与压缩

5.4.2 压缩范围

5.5 小结

第6章 YARN——其他应用模式进入Hadoop的引路人

6.1 YARN的架构

6.1.1 资源管理器

6.1.2 Application Master

6.1.3 节点管理器

6.1.4 YARN客户端

6.2 开发YARN的应用程序

6.2.1 实现YARN客户端

6.2.2 实现AM实例

6.3 YARN的监控

6.4 YARN中的作业调度

6.4.1 容量调度器

6.4.2 公平调度器

6.5 YARN命令行

6.5.1 用户命令

6.5.2 管理员命令

6.6 小结

第7章 基于YARN的Storm——Hadoop中的低延时处理

7.1 批处理对比流式处理

7 2 Apache Storm

7.2.1 Apache Storm的集群架构

7.2.2 Apache Storm的计算和数据模型

7.2.3 Apache Storm用例

7 2.4 Apache Storm的开发

7.2.5 Apache Storm 0.9.1

7.3 基于YARN的Storm

7.3.1 在YARN上安装Apache Storm

7.3.2 安装过程

7.4 小结

第8章 云上的Hadoop

8.1 云计算的特点

8.2 云上的Hadoop

8.3 亚马逊Elastic MapReduce

8.4 小结

第9章 HDFS替代品

9.1 HDFS的优缺点

9.2 亚马逊AWS S3

9.3 在Hadoop中实现文件系统

9.4 在Hadoop中实现S3原生文件系统

9.5 小结

第10章 HDFS联合

10.1 旧版HDFS架构的限制

10.2 HDFS联合的架构

10.2.1 HDFS联合的好处

10.2.2 部署联合NameNode

10.3 HDFS高可用性

10.3.1 从NameNode、检查节点和备份节点

10.3.2 高可用性——共享edits

10.3.3 HDFS实用工具

10.3.4 三层与四层网络拓扑

10.4 HDFS块放置策略

10.5 小结

第11章 Hadoop安全

11.1 安全的核心

11.2 Hadoop中的认证

11.2.1 Kerberos认证

11.2.2 Kerberos的架构和工作流

11.2.3 Kerberos认证和Hadoop

11.2.4 HTTP接口的认证

11.3 Hadoop中的授权

11.3.1 HDFS的授权

11.3.2 限制HDFS的使用量

11.3.3 Hadoop中的服务级授权

11.4 Hadoop中的数据保密性

11.5 Hadoop中的日志审计

11.6 小结

第12章 使用Hadoop进行数据分析

12.1 数据分析工作流

12.2 机器学习

12.3 Apache Mahout

12.4 使用Hadoop和Mahout进行文档分析

12.4.1 词频

12.4.2 文频

12.4.3 词频-逆向文频

12.4.4 Pig中的Tf-idf

12.4.5 余弦相似度距离度量

12.4.6 使用k-means的聚类

12.4.7 使用Apache Mahout进行k-means聚类

12.5 RHadoop

12.6 小结

附录 微软Windows中的Hadoop

精通Hadoop 精彩文摘

1. Hadoop-0.20-append

文件追加(append)特性是Hadoop-0.20-append版本的主要特性,它让用户在执行HBase的时候不再担心数据丢失的风险。在HDFS上运行的HBase是一种被广泛使用的列存储应用,可以在面向批处理的Hadoop平台上提供在线存储功能。具体来说,文件追加特性使得HBase的日志能够持久存储,确保了数据的安全。传统的HDFS为MapReduce批处理作业提供文件的写入和输出功能。在完成这些作业时,一次只能打开一个文件,将很多数据写入其中,然后再关闭文件。被关闭的文件可以被读取很多次,但是不能再被修改。语义上提供的是一种一次写入多次读取( write-once-read-many-times)的模式,且当文件被写入时,没有人能读取文件的内容。

任何程序在写HDFS文件的过程中,当写操作失败或者程序崩溃时,都必须重写这个文件的全部内容。在MapReduce中,用户总是重新执行任务来产生新的文件,但是在像HBase这样的在线系统中却不是这样的。如果日志文件写失败,事务(transaction)操作就不能再被执行,从而导致数据的丢失。如果能够根据日志内容重新执行事务操作,那数据就不会丢失。文件追加功能使HBase和其他需要事务操作的应用能够在HDFS上执行,从而降低了这一风险。

2. Hadoop-0.20-security

雅虎的Hadoop团队在Hadoop-0.20-security版本中主动承担了添加安全特性的工作。企业内的团队各种各样,并且他们处理的数据类型也各不相同。为了遵守法规、保护客户隐私和保障数据安全,进行数据隔离、数据认证以及Hadoop作业和数据的授权是非常重要的。这个安全相关的版本的发布包含了丰富的特性以支持上述三方面的企业安全需求。

这个版本将Kerberos认证系统完整集成到Hadoop中。访问控制列表(Access Control Lists,ACL)的引入确保了作业的运行和数据的访问得到恰当的授权。认证与授权为系统中属于不同用户的作业和数据提供了必要的隔离性。

图书网:精通Hadoop pdf

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

程序设计

重构 改善既有代码的设计(中文版)pdf

《重构:改善既有代码的设计》(中文版)所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口...
程序设计

数据结构 C语言版 第2版pdf

适读人群 :普通高校电子信息大类本科生学习、考研,同时也适合零售和培训。 采用“案例驱动”的编写模式。书中结合实际应用,将各章按照“案例引入——数据结构及其操作——案例分析与实现”...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: