Hadoop权威指南(第2版)
Hadoop权威指南(第2版)
图书信息
作者:怀特(Tom White)(作者), 周敏奇 (译者), 钱卫宁 (译者), 金澈清 (译者), 王晓玲 (译者)
出版社: 清华大学出版社; 第2版 (2011年6月1日)
外文书名: Hadoop:The Definitive Guide
平装: 600页
正文语种: 简体中文
开本: 16
ISBN: 9787302257585
条形码: 9787302257585
产品尺寸及重量: 23 x 17.4 x 3.2 cm ; 839 g
内容简介
《Hadoop权威指南(第2版)》从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何构建Hadoop集群,如何管理Hadoop;Pig简介;Hbase简介;Hive简介;ZooKeeper简介;开源工具Sqoop,最后还提供了丰富的案例分析。《Hadoop权威指南(第2版)》是Hadoop权威参考,程序员可从中探索如何分析海量数据集,管理员可以从中了解如何安装与运行Hadoop集群。
编辑推荐
Google帝国的基石是什么?MapReduce算法!开源项目Hadoop作为它的一个具体实现,可以轻松用于构建和维护一个可靠性高、伸缩性强的分布式系统。
作者Tom White作为Hadoop的项目负责人,通过自己对Hadoop和Hadoop社区的理解,化繁为简,用浅显易懂的语言介绍了Had00p能做什么,怎么做才能充分发挥Hadoop的优势,Had00p能够和哪些开源工具结合使用。《Hadoop权威指南(第2版)》是一本主题丰富、讲解透彻的权威参考书,可帮助程序员了解分析海量数据集的细枝末节,帮助管理员掌握搭建和运行Hadoop集群的具体过程。
经过修订和更新的第2版概述了Hadoop的最新动态,例如Hive、sqoop和Avro等。书中还提供了案例分析来帮助读者了解如何用Hadoop来解决具体的问题。如果想充分利用数据,从中挖掘出有价值的见解或者观点,毫无疑问,这本书将是您不可或缺的重要参考。
作者简介
作者:(美)怀特 译者:周敏奇、王晓玲、金澈清、钱卫宁
Tom White从2007年以来,一直担任Apache Hadoop项目负责人。他是Apache软件基金会的成员之一,同时也是Cloudera的一名工程师。Tom为oreully-com、java-net和IBM的developerWorks写过大量文章,并经常在很多行业大会上发表演讲。
目录
第1章 初识Hadoop 1
数据!数据! 1
数据存储与分析 3
与其他系统相比 4
关系型数据库管理系统 4
网格计算 6
志愿计算 8
1.3.4 Hadoop 发展简史 9
Apache Hadoop和Hadoop生态圈 12
第2章 关于MapReduce 15
一个气象数据集 15
数据的格式 15
使用Unix工具进行数据分析 17
使用Hadoop分析数据 18
map阶段和reduce阶段 18
横向扩展 27
合并函数 30
运行一个分布式的MapReduce作业 33
Hadoop的Streaming 33
Ruby版本 33
Python版本 36
Hadoop Pipes 37
编译运行 38
第3章 Hadoop分布式文件系统 41
HDFS的设计 41
HDFS的概念 43
数据块 43
namenode和datanode 44
命令行接口 45
基本文件系统操作 46
Hadoop文件系统 47
接口 49
Java接口 51
从Hadoop URL中读取数据 51
通过FileSystem API读取数据 52
写入数据 55
目录 57
查询文件系统 57
删除数据 62
数据流 62
文件读取剖析 62
文件写入剖析 65
一致模型 68
通过 distcp并行拷贝 70
保持 HDFS 集群的均衡 71
Hadoop的归档文件 71
使用Hadoop归档文件 72
不足 73
第4章 Hadoop I/O 75
数据完整性 75
HDFS的数据完整性 75
LocalFileSystem 76
ChecksumFileSystem 77
压缩 77
codec 78
压缩和输入切分 83
在MapReduce中使用压缩 84
序列化 86
Writable接口 87
Writable类 89
实现定制的Writable类型 96
序列化框架 101
Avro 103
依据文件的数据结构 116
写入SequenceFile 117
MapFile 123
第5章 MapReduce应用开发 129
配置API 130
合并多个源文件 131
可变的扩展 132
配置开发环境 132
配置管理 132
辅助类GenericOptionsParser,Tool和ToolRunner 135
编写单元测试 138
mapper 138
reducer 140
本地运行测试数据 141
在本地作业运行器上运行作业 141
测试驱动程序 145
在集群上运行 146
打包 146
启动作业 146
MapReduce的Web界面 148
获取结果 151
作业调试 153
使用远程调试器 158
作业调优 160
分析任务 160
MapReduce的工作流 163
将问题分解成MapReduce作业 163
运行独立的作业 165
第6章 MapReduce的工作机制 167
剖析MapReduce作业运行机制 167
作业的提交 167
作业的初始化 169
任务的分配 169
任务的执行 170
进度和状态的更新 170
作业的完成 172
失败 173
任务失败 173
tasktracker失败 175
jobtracker失败 175
作业的调度 175
Fair Scheduler 176
Capacity Scheduler 177
shuffle和排序 177
map端 177
reduce端 179
配置的调优 180
任务的执行 183
推测式执行 183
重用JVM 184
跳过坏记录 185
任务执行环境 186
第7章 MapReduce的类型与格式 189
MapReduce的类型 189
默认的MapReduce作业 192
输入格式 198
输入分片与记录 198
文本输入 209
二进制输入 213
多种输入 214
数据库输入(和输出) 215
输出格式 215
文本输出 216
二进制输出 216
多个输出 217
延迟输出 224
数据库输出 224
第8章 MapReduce的特性 225
计数器 225
内置计数器 225
用户定义的Java计数器 227
用户定义的Streaming计数器 232
排序 232
准备 232
部分排序 233
总排序 237
二次排序 241
联接 247
map端联接 247
reduce端联接 249
边数据分布 252
利用JobConf来配置作业 252
分布式缓存 253
MapReduce库类 257
第9章 构建Hadoop集群 259
集群规范 259
网络拓扑 261
集群的构建和安装 263
安装Java 264
创建Hadoop用户 264
安装Hadoop 264
测试安装 265
SSH配置 265
Hadoop配置 266
配置管理 267
环境设置 269
Hadoop守护进程的关键属性 273
Hadoop守护进程的地址和端口 278
Hadoop的其他属性 279
创建用户帐号 280
安全性 281
Kerberos和Hadoop 282
委托令牌 284
其他安全性改进 285
利用基准测试程序测试Hadoop集群 286
Hadoop基准测试程序 287
用户的作业 289
云上的Hadoop 289
Amazon EC2上的Hadoop 290
第10章 管理Hadoop 293
HDFS 293
永久性数据结构 293
安全模式 298
日志审计 300
工具 300
监控 305
日志 305
度量 306
Java管理扩展(JMX) 309
维护 312
日常管理过程 312
委任节点和解除节点 313
升级 316
第11章 Pig简介 321
安装与运行Pig 322
执行类型 322
运行Pig程序 324
Grunt 324
Pig Latin编辑器 325
示例 325
生成示例 327
与数据库比较 328
PigLatin 330
结构 330
语句 331
表达式 335
1.4.4 类型 336
模式 338
函数 342
用户自定义函数 343
过滤UDF 343
计算UDF 347
加载UDF 348
数据处理操作 351
加载和存储数据 351
过滤数据 352
分组与连接数据 354
对数据进行排序 359
组合和分割数据 360
Pig实战 361
并行处理 361
参数代换 362
第12章 Hive 365
1.1 安装Hive 366
1.1.1 Hive外壳环境 367
1.2 示例 368
1.3 运行Hive 369
1.3.1 配置Hive 369
1.3.2 Hive服务 371
1.3.3 Metastore 373
1.4 和传统数据库进行比较 375
1.4.1 读时模式(Schema on Read)vs.写时模式(Schema on Write) 376
1.4.2 更新、事务和索引 376
1.5 HiveQL 377
1.5.1 数据类型 378
1.5.2 操作和函数 380
1.6 表 381
1.6.1 托管表(Managed Tables)和外部表(External Tables) 381
1.6.2 分区(Partitions)和桶(Buckets) 383
1.6.3 存储格式 387
1.6.4 导入数据 392
1.6.5 表的修改 394
1.6.6 表的丢弃 395
1.7 查询数据 395
1.7.1 排序(Sorting)和聚集(Aggregating) 395
1.7.2 MapReduce脚本 396
1.7.3 连接 397
1.7.4 子查询 400
1.7.5 视图(view) 401
1.8 用户定义函数(User-Defined Functions) 402
1.8.1 编写UDF 403
1.8.2 编写UDAF 405
第13章 HBase 411
2.1 HBasics 411
2.1.1 背景 412
2.2 概念 412
2.2.1 数据模型的“旋风之旅” 412
2.2.2 实现 413
2.3 安装 416