书籍详情
Hadoop权威指南修订升级版(第2版)
作者:(美)怀特(White, T.) 著,周敏奇,钱卫宁,金澈清,王晓玲 译.
出版社:清华大学出版社
出版时间:2011-06-01
ISBN:9787302257585
定价:¥89.00
购买这本书可以去
内容简介
本书从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书共16章,3个附录,涉及的主题包括:Haddoop简介;MapReduce简介;Hadoop分布式文件系统;Hadoop的I/O、MapReduce应用程序开发;MapReduce的工作机制;MapReduce的类型和格式;MapReduce的特性;如何构建Hadoop集群,如何管理Hadoop;Pig简介;Hbase简介;Hive简介;ZooKeeper简介;开源工具Sqoop,最后还提供了丰富的案例分析。本书是Hadoop权威参考,程序员可从中探索如何分析海量数据集,管理员可以从中了解如何安装与运行Hadoop集群。
作者简介
暂缺《Hadoop权威指南修订升级版(第2版)》作者简介
目录
第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 onWrite) 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)和外部表(ExternalTables) 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
2.3.1 测试驱动 417
2.4 客户机 419
2.4.1 Java 419
2.4.2 Avro,REST,以及Thrift 422
2.5 示例 423
2.5.1 模式 424
2.5.2 加载数据 425
2.5.3 Web查询 428
2.6 HBase和RDBMS的比较 431
2.6.1 成功的服务 432
2.6.2 HBase 433
2.6.3 实例:HBase在Streamy.com的使用 433
2.7 Praxis 435
2.7.1 版本 435
2.7.2 HDFS 436
2.7.3 用户接口(UI) 437
2.7.4 度量(metrics) 437
2.7.5 模式设计 438
2.7.6 计数器 438
2.7.7 批量加载(bulkloading) 439
第14章 ZooKeeper 441
安装和运行ZooKeeper 442
示例 443
ZooKeeper中的组成员关系 444
创建组 444
加入组 447
列出组成员 448
ZooKeeper服务 451
数据模型 451
操作 453
实现 457
一致性 458
会话 460
状态 462
使用ZooKeeper来构建应用 463
配置服务 463
具有可恢复性的ZooKeeper应用 466
锁服务 470
生产环境中的ZooKeeper 473
可恢复性和性能 473
配置 474
第15章 开源工具Sqoop 477
获取Sqoop 477
一个导入的例子 479
生成代码 482
其他序列化系统 482
深入了解数据库导入 483
导入控制 485
导入和一致性 485
直接模式导入 485
使用导入的数据 486
导入的数据与Hive 487
导入大对象 489
执行导出 491
深入了解导出 493
导出与事务 494
导出和SequenceFile 494
第16章 实例分析 497
Hadoop 在Last.fm的应用 497
Last.fm:社会音乐史上的革命 497
Hadoop a Last.fm 497
用Hadoop产生图表 498
Track Statistics程序 499
总结 506
Hadoop和Hive在Facebook的应用 506
概要介绍 506
Hadoop a Facebook 506
假想的使用情况案例 509
Hive 512
问题与未来工作计划 516
Nutch 搜索引擎 517
背景介绍 517
数据结构 518
Nutch系统利用Hadoop进行数据处理的精选实例 521
总结 530
Rackspace的日志处理 531
简史 532
选择Hadoop 532
收集和存储 532
日志的MapReduce模型 533
关于Cascading 539
字段、元组和管道 540
操作 542
Tap类,Scheme对象和Flow对象 544
Cascading实战 545
灵活性 548
Hadoop和Cascading在ShareThis的应用 549
总结 552
在Apache Hadoop上的TB字节数量级排序 553
使用Pig和Wukong来探索10亿数量级边的 网络图 556
测量社区 558
每个人都在和我说话:Twitter回复关系图 558
degree(度) 560
对称链接 561
社区提取 562
附录A 安装Apache Hadoop 565
先决条件 565
安装 565
配置 566
本机模式 567
伪分布模式 567
全分布模式 569
附录B Cloudera’s Distribution for Hadoop 571
附录C 准备NCDC天气数据 573
数据!数据! 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 onWrite) 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)和外部表(ExternalTables) 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
2.3.1 测试驱动 417
2.4 客户机 419
2.4.1 Java 419
2.4.2 Avro,REST,以及Thrift 422
2.5 示例 423
2.5.1 模式 424
2.5.2 加载数据 425
2.5.3 Web查询 428
2.6 HBase和RDBMS的比较 431
2.6.1 成功的服务 432
2.6.2 HBase 433
2.6.3 实例:HBase在Streamy.com的使用 433
2.7 Praxis 435
2.7.1 版本 435
2.7.2 HDFS 436
2.7.3 用户接口(UI) 437
2.7.4 度量(metrics) 437
2.7.5 模式设计 438
2.7.6 计数器 438
2.7.7 批量加载(bulkloading) 439
第14章 ZooKeeper 441
安装和运行ZooKeeper 442
示例 443
ZooKeeper中的组成员关系 444
创建组 444
加入组 447
列出组成员 448
ZooKeeper服务 451
数据模型 451
操作 453
实现 457
一致性 458
会话 460
状态 462
使用ZooKeeper来构建应用 463
配置服务 463
具有可恢复性的ZooKeeper应用 466
锁服务 470
生产环境中的ZooKeeper 473
可恢复性和性能 473
配置 474
第15章 开源工具Sqoop 477
获取Sqoop 477
一个导入的例子 479
生成代码 482
其他序列化系统 482
深入了解数据库导入 483
导入控制 485
导入和一致性 485
直接模式导入 485
使用导入的数据 486
导入的数据与Hive 487
导入大对象 489
执行导出 491
深入了解导出 493
导出与事务 494
导出和SequenceFile 494
第16章 实例分析 497
Hadoop 在Last.fm的应用 497
Last.fm:社会音乐史上的革命 497
Hadoop a Last.fm 497
用Hadoop产生图表 498
Track Statistics程序 499
总结 506
Hadoop和Hive在Facebook的应用 506
概要介绍 506
Hadoop a Facebook 506
假想的使用情况案例 509
Hive 512
问题与未来工作计划 516
Nutch 搜索引擎 517
背景介绍 517
数据结构 518
Nutch系统利用Hadoop进行数据处理的精选实例 521
总结 530
Rackspace的日志处理 531
简史 532
选择Hadoop 532
收集和存储 532
日志的MapReduce模型 533
关于Cascading 539
字段、元组和管道 540
操作 542
Tap类,Scheme对象和Flow对象 544
Cascading实战 545
灵活性 548
Hadoop和Cascading在ShareThis的应用 549
总结 552
在Apache Hadoop上的TB字节数量级排序 553
使用Pig和Wukong来探索10亿数量级边的 网络图 556
测量社区 558
每个人都在和我说话:Twitter回复关系图 558
degree(度) 560
对称链接 561
社区提取 562
附录A 安装Apache Hadoop 565
先决条件 565
安装 565
配置 566
本机模式 567
伪分布模式 567
全分布模式 569
附录B Cloudera’s Distribution for Hadoop 571
附录C 准备NCDC天气数据 573
猜您喜欢