《Hadoop实战》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)拉姆著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2011
  • ISBN:7115264480
  • 页数:255 页
图书介绍:作为云计算所青睐的分布式框架,Hadoop是一个用Java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,是谷歌实现云计算的重要基石。本书分为3个部分,深入浅出地介绍了Hadoop框架、编写和运行Hadoop数据处理程序所需的实践技能和Hadoop之外更大的生态系统。

第一部分Hadoop——一种分布式编程框架 2

第1章Hadoop简介 2

1.1为什么写《Hadoop实战》 3

1.2什么是Hadoop 3

1.3了解分布式系统和Hadoop 4

1.4比较SQL数据库和Hadoop 5

1.5理解MapReduce 6

1.5.1动手扩展一个简单程序 7

1.5.2相同程序在MapReduce中的扩展 9

1.6用Hadoop统计单词——运行第一个程序 11

1.7 Hadoop历史 15

1.8小结 16

1.9资源 16

第2章 初识Hadoop 17

2.1 Hadoop的构造模块 17

2.1.1 NameNode 17

2.1.2 DataNode 18

2.1.3 Secondary NameNode 19

2.1.4 JobTracker 19

2.1.5 TaskTracker 19

2.2为Hadoop集群安装SSH 21

2.2.1定义一个公共账号 21

2.2.2验证SSH安装 21

2.2.3生成SSH密钥对 21

2.2.4将公钥分布并登录验证 22

2.3运行Hadoop 22

2.3.1本地(单机)模式 23

2.3.2伪分布模式 24

2.3.3全分布模式 25

2.4基于Web的集群用户界面 28

2.5小结 30

第3章Hadoop组件 31

3.1 HDFS文件操作 31

3.1.1基本文件命令 32

3.1.2编程读写HDFS 35

3.2剖析MapReduce程序 37

3.2.1 Hadoop数据类型 39

3.2.2 Mapper 40

3.2.3 Reducer 41

3.2.4 Partitioner:重定向Mapper 输出 41

3.2.5 Combiner:本地reduce 43

3.2.6预定义mapper和Reducer类的单词计数 43

3.3读和写 43

3.3.1 InputFormat 44

3.3.2 OutputFormat 49

3.4小结 50

第二部分 实战 52

第4章 编写MapReduce基础程序 52

4.1获得专利数据集 52

4.1.1专利引用数据 53

4.1.2专利描述数据 54

4.2构建MapReduce程序的基础模板 55

4.3计数 60

4.4适应Hadoop API的改变 64

4.5 Hadoop的Streaming 67

4.5.1通过Unix命令使用Streaming 68

4.5.2通过脚本使用Streaming 69

4.5.3用Streaming处理键/值对 72

4.5.4通过Aggregate包使用Streaming 75

4.6使用combiner提升性能 80

4.7温故知新 83

4.8小结 84

4.9更多资源 84

第5章 高阶MapReduce 85

5.1链接MapReduce作业 85

5.1.1顺序链接MapReduce作业 85

5.1.2具有复杂依赖的MapReduce链接 86

5.1.3预处理和后处理阶段的链接 86

5.2联结不同来源的数据 89

5.2.1 Reduce侧的联结 90

5.2.2基于DistributedCache的复制联结 98

5.2.3半联结:map侧过滤后在reduce侧联结 101

5.3创建一个Bloom filter 102

5.3.1 Bloom filter做了什么 102

5.3.2实现一个Bloom filter 104

5.3.3 Hadoop 0.20以上版本的Bloom filter 110

5.4温故知新 110

5.5小结 111

5.6更多资源 112

第6章 编程实践 113

6.1开发MapReduce程序 113

6.1.1本地模式 114

6.1.2伪分布模式 118

6.2生产集群上的监视和调试 123

6.2.1计数器 123

6.2.2跳过坏记录 125

6.2.3用IsolationRunner重新运行出错的任务 128

6.3性能调优 129

6.3.1通过combiner来减少网络流量 129

6.3.2减少输入数据量 129

6.3.3使用压缩 129

6.3.4重用JVM 132

6.3.5根据猜测执行来运行 132

6.3.6代码重构与算法重写 133

6.4小结 134

第7章 细则手册 135

7.1向任务传递作业定制的参数 135

7.2探查任务特定信息 137

7.3划分为多个输出文件 138

7.4以数据库作为输入输出 143

7.5保持输出的顺序 145

7.6小结 146

第8章 管理Hadoop 147

8.1为实际应用设置特定参数值 147

8.2系统体检 149

8.3权限设置 151

8.4配额管理 151

8.5启用回收站 152

8.6删减DataNode 152

8.7增加DataNode 153

8.8管理NameNode和SNN 153

8.9恢复失效的NameNode 155

8.10感知网络布局和机架的设计 156

8.11多用户作业的调度 157

8.11.1多个JobTracker 158

8.11.2公平调度器 158

8.12小结 160

第三部分Hadoop也疯狂 162

第9章 在云上运行Hadoop 162

9.1 Amazon Web Services简介 162

9.2安装AWS 163

9.2.1获得AWS身份认证凭据 164

9.2.2获得命令行工具 166

9.2.3准备SSH密钥对 168

9.3在EC2上安装Hadoop 169

9.3.1 配置安全参数 169

9.3.2 配置集群类型 169

9.4在EC2上运行MapReduce程序 171

9.4.1将代码转移到Hadoop集群上 171

9.4.2访问Hadoop集群上的数据 172

9.5清空和关闭EC2实例 175

9.6 Amazon Elastic MapReduce和其他AWS服务 176

9.6.1 Amazon Elastic MapReduce 176

9.6.2 AWS导入/导出 177

9.7小结 177

第10章用Pig编程 178

10.1像Pig一样思考 178

10.1.1数据流语言 179

10.1.2数据类型 179

10.1.3用户定义函数 179

10.2安装Pig 179

10.3运行Pig 180

10.4通过Grunt学习Pig Latin 182

10.5谈谈Pig Latin 186

10.5.1数据类型和schema 186

10.5.2表达式和函数 187

10.5.3关系型运算符 189

10.5.4执行优化 196

10.6用户定义函数 196

10.6.1使用UDF 196

10.6.2编写UDF 197

10.7脚本 199

10.7.1注释 199

10.7.2参数替换 200

10.7.3多查询执行 201

10.8 Pig实战——计算相似专利的例子 201

10.9小结 206

第11章Hive及Hadoop群 207

11.1 Hive 207

11.1.1安装与配置Hive 208

11.1.2查询的示例 210

11.1.3深入HiveQL 213

11.1.4 Hive小结 221

11.2其他Hadoop相关的部分 221

11.2.1 HBase 221

11.2.2 ZooKeeper 221

11.2.3 Cascading 221

11.2.4 Cloudera 222

11.2.5 Katta 222

11.2.6 CloudBase 222

11.2.7 Aster Data和Greenplum 222

11.2.8 Hama和Mahout 223

11.2.9 search-hadoop.com 223

11.3小结 223

第12章 案例研究 224

12.1转换《纽约时报》1100万个库存图片文档 224

12.2挖掘中国移动的数据 225

12.3在StumbleUpon推荐最佳网站 229

12.3.1分布式StumbleUpon的开端 230

12.3.2 HBase和StumbleUpon 230

12.3.3 StumbleUpon上的更多Hadoop应用 236

12.4搭建面向企业查询的分析系统——IBM的ES2项目 238

12.4.1 ES2系统结构 240

12.4.2 ES2爬虫 241

12.4.3 ES2分析 242

12.4.4小结 249

12.4.5参考文献 250

附录A HDFS文件命令 251