微信扫一扫,移动浏览光盘
简介
Hadoop是一种分布式数据和计算的框架,在大数据处理中应用非常广泛。MapReduce是一种编程模型。Hadoop正是以MapReduce作为核心编程模型的。
《MapReduce 2.0源码分析与编程实战》比较系统地介绍了新一代MapReduce 2.0的理论体系、架构和程序设计方法。全书分为10章,系统地介绍了HDFS存储系统,Hadoop的文件I/O系统,MapReduce 2.0的框架结构和源码分析,MapReduce 2.0的配置与测试,MapReduce 2.0运行流程,MapReduce 2.0高级程序设计以及相关特性等内容。《MapReduce 2.0源码分析与编程实战》最后部分介绍了数据挖掘的初步知识,以及不同应用类型的MapReduce 2.0编程实战。
《MapReduce 2.0源码分析与编程实战》强调理论联系实际,帮助读者在掌握MapReduce 2.0基本知识和特性的基础上,培养实际编程和解决大数据处理相关问题的能力。《MapReduce 2.0源码分析与编程实战》可作为学习MapReduce 2.0的源码、MapReduce 2.0程序设计、数据挖掘、机器学习等相关内容的程序设计人员的培训和自学读物,也可以作为高等院校相关专业的教学辅导书。
目录
第1章 大象也会跳舞
1.1 大数据时代
1.2 大数据分析时代
1.3 简单、粗暴、有效——这就是Hadoop
1.4 MapReduce与Hadoop
1.5 看,大象也会跳舞
本章小结
第2章 大象的肚子——HDFS文件系统详解
2.1 HDFS基础详解
2.1.1 HDFS设计思路
2.1.2 HDFS架构与基本存储单元
2.2 HDFS数据存取流程分析
2.2.1 HDFS数据存储位置与复制详解
2.2.2 HDFS 输入流程分析
2.2.3 HDFS输出流程分析
2.3 HDFS命令行操作详解
2.3.1 HDFS中4个通用的命令行操作
2.3.2 HDFS文件18个基本命令行的操作
2.3.3 HDFS文件访问权限详解
2.4 通过Web浏览HDFS文件
2.5 HDFS接口使用详解
2.5.1 使用FileSystem API操作HDFS中的内容
2.5.2 使用FileSystem API读取数据详解
2.5.3 使用FileSystem API写入数据详解
2.6 HDFS文件同步与并发访问
本章小结
第3章“吃下去吐出来”——Hadoop文件I/O系统详解
3.1 Hadoop的压缩类型介绍
3.2 Hadoop的压缩类库
3.2.1 从一个简单的例子开始
3.2.2 CompressionCodec接口
3.2.3 CompressionCodecFactory类详解
3.2.4 压缩池
3.2.5 在Hadoop中使用压缩
3.3 I/O中序列化类型详解
3.3.1 Text类详解
3.3.2 IntWritable类详解
3.3.3 ObjectWritable类详解
3.3.4 NullWritable类详解
3.3.5 ByteWritable类详解
3.4 实现自定义的Writable类型
3.4.1 Writable接口
3.4.2 WritableComparable接口与RawComparator接口
3.4.3 自定义的Writable类
3.4.4 为了更快的比较
3.5 Hadoop中小文件处理详解
3.5.1 SequenceFile详解
3.5.2 MapFile详解
本章小结
第4章“大象的大脑”——MapReduce框架结构与源码分析
4.1 MapReduce框架结构与源码分析
4.1.1 MapReduce框架分析与执行过程详解
4.1.2 MapReduce输入输出与源码分析
4.1.3 MapReduce中Job类详解
4.2 编程实战:经典的MapReduce单词计数程序
4.2.1 准备工作
4.2.2 MapReduce过程分析
4.2.3 计数程序的MapReduce实现
4.2.4 计数程序的main方法
4.2.5 注意事项
4.2.6 运行结果
4.2.7 Mapper中的Combiner详解
本章小结
第5章 深入!MapReduce配置与测试
5.1 MapReduce环境变量配置详解
5.1.1 使用XML配置新的配置文件
5.1.2 修改已有的配置文件
5.1.3 辅助类ToolRunner、Configured详解
5.2 使用MRUnit对MapReduce进行测试
5.2.1 MRUnit简介与使用
5.2.2 使用MRUnit完成Mapper单元测试
5.2.3 使用MRUnit完成Reduce单元测试
5.2.4 使用MRUnit完成MapReduce单元测试
5.3 在本地磁盘上进行MapReduce测试
5.3.1 伪环境欺骗
5.3.2 在Eclipse中配置Hadoop插件
5.3.3 编写本地测试代码
5.4 MapReduce计数器
5.4.1 使用计数器的MapReduce程序设计
5.4.2 通过Web接口进行任务分析
5.4.3 通过Web接口查看计数器
本章小结
第6章 大象的思考流程——MapReduce运行流程详解
6.1 经典MapReduce任务的工作流程
6.1.1 ClientNode执行任务的初始化
6.1.2 消息传递
6.1.3 MapReduce任务的执行
6.1.4 任务的完成与状态更新
6.2 经典MapReduce任务异常处理详解
6.2.1 MapReduce任务异常的处理方式
6.2.2 MapReduce任务失败的处理方式
6.3 经典MapReduce任务的数据处理过程
6.3.1 Map端的输入数据处理过程
6.3.2 Reduce端的输入数据处理过程
6.3.3 Java虚拟机重用
6.4 MapReduce 2.0(YARN)工作流程详解
6.4.1 YARN概述
6.4.2 YARN任务过程分析
6.4.3 YARN的异常处理
本章小结
第7章 更强的大象——MapReduce高级程序设计续
7.1 MapReduce程序设计默认格式类型详解
7.1.1 map与reduce方法的默认输入输出类型
7.1.2 自定义输入输出类型设置
7.1.3 自定义全局类型变量设置要求
7.1.4 默认的MapReduce程序设置
7.2 InputFormat输入格式详解
7.2.1 输入记录与分区
7.2.2 InputFormat源码及执行过程分析
7.2.3 实现自己的RecordReader类
7.2.4 自定义的FileInputFormat类
7.2.5 一些常用的InputFormat类详解
7.3 OutputFormat输出格式详解
7.3.1 OutputFormat默认输出格式
7.3.2 自定义OutputFormat输出格式
7.3.3 对Reduce任务数进行设置
7.3.4 OutputFormat分区类Partitioner详解
7.4 多种输入与输出使用介绍
7.4.1 MultipleInputs多种输入方式详解
7.4.2 MultipleOutputs多种输出方式详解
本章小结
第8章 MapReduce相关特性详解
8.1 MapReduce计数器
8.1.1 Hadoop框架内置的计数器
8.1.2 自定义计数器
8.1.3 动态计数器
8.1.4 获取计数器值
8.2 排序与查找
8.2.1 普通排序规则与查找
8.2.2 使用MapFile进行排序与查找
8.3 对输出结果的值分组排序
8.3.1 准备工作
8.3.2 对结果进行分组处理
8.3.3 对键的二次排序
8.3.4 自定义输出分组
8.4 编程实战:使用二次排序自动查找最小值
8.4.1 思路分析
8.4.2 验证输入输出结果
8.4.3 对结果进行二次排序
8.4.4 对结果进行分组
8.4.5 分片处理排序与分组
8.4.6 验证结果
本章小结
第9章 啤酒与尿布——MapReduce连接与数据挖掘初步
9.1 对于同样格式数据进行MapReduce连接
9.2 对于不同格式数据进行MapReduce连接
9.3 不能说的秘密——啤酒与尿布
9.3.1 销售清单的秘密
9.3.2 设计程序
9.3.3 程序执行结果
9.4 数据挖掘初步
本章小结
第10章 MapReduce实战编程及深度分析
10.1 编程实战:自定义数据库中读取数据
10.1.1 准备工作
10.1.2 程序分析
10.1.3 自定义SQLInputFormat
10.1.4 使用自定义程序从数据库中读取数据
10.1.5 程序运行及数据分析
10.1.6 使用合并记录进行性能调优
10.2 编程实战:串联寻找共同转载微博
10.2.1 应用分析
10.2.2 第一步表转换
10.2.3 建立关注连接
10.2.4 自定义的OutputFormat
10.2.5 串联解决共同转载微博
10.2.6 性能调优及后续处理
10.3 编程实战:云存储模型
10.3.1 应用分析
10.3.2 Tomcat简介
10.3.3 配置Tomcat服务器
10.3.4 测试Tomcat服务器
10.3.5 在Eclipse中配置Tomcat
10.3.6 创建云存储目录
10.3.7 获取云存储列表
10.3.8 将文件上传至数据云存储中
10.3.9 删除文件
10.3.10 下载云端存储文件
10.3.11 程序执行与性能调优
10.4 编程实战:多文档相似关键字检索
10.4.1 应用分析
10.4.2 自定义任务处理类
10.4.3 程序执行及后续分析
10.5 编程实战:学生成绩整理与分组
10.5.1 应用分析
10.5.2 自定义的ScoreWritable
10.5.3 自定义的MapReduce
10.5.4 自定义的分组
10.5.5 程序运行结果
10.5.6 采用更多分组类型
本章小结
1.1 大数据时代
1.2 大数据分析时代
1.3 简单、粗暴、有效——这就是Hadoop
1.4 MapReduce与Hadoop
1.5 看,大象也会跳舞
本章小结
第2章 大象的肚子——HDFS文件系统详解
2.1 HDFS基础详解
2.1.1 HDFS设计思路
2.1.2 HDFS架构与基本存储单元
2.2 HDFS数据存取流程分析
2.2.1 HDFS数据存储位置与复制详解
2.2.2 HDFS 输入流程分析
2.2.3 HDFS输出流程分析
2.3 HDFS命令行操作详解
2.3.1 HDFS中4个通用的命令行操作
2.3.2 HDFS文件18个基本命令行的操作
2.3.3 HDFS文件访问权限详解
2.4 通过Web浏览HDFS文件
2.5 HDFS接口使用详解
2.5.1 使用FileSystem API操作HDFS中的内容
2.5.2 使用FileSystem API读取数据详解
2.5.3 使用FileSystem API写入数据详解
2.6 HDFS文件同步与并发访问
本章小结
第3章“吃下去吐出来”——Hadoop文件I/O系统详解
3.1 Hadoop的压缩类型介绍
3.2 Hadoop的压缩类库
3.2.1 从一个简单的例子开始
3.2.2 CompressionCodec接口
3.2.3 CompressionCodecFactory类详解
3.2.4 压缩池
3.2.5 在Hadoop中使用压缩
3.3 I/O中序列化类型详解
3.3.1 Text类详解
3.3.2 IntWritable类详解
3.3.3 ObjectWritable类详解
3.3.4 NullWritable类详解
3.3.5 ByteWritable类详解
3.4 实现自定义的Writable类型
3.4.1 Writable接口
3.4.2 WritableComparable接口与RawComparator接口
3.4.3 自定义的Writable类
3.4.4 为了更快的比较
3.5 Hadoop中小文件处理详解
3.5.1 SequenceFile详解
3.5.2 MapFile详解
本章小结
第4章“大象的大脑”——MapReduce框架结构与源码分析
4.1 MapReduce框架结构与源码分析
4.1.1 MapReduce框架分析与执行过程详解
4.1.2 MapReduce输入输出与源码分析
4.1.3 MapReduce中Job类详解
4.2 编程实战:经典的MapReduce单词计数程序
4.2.1 准备工作
4.2.2 MapReduce过程分析
4.2.3 计数程序的MapReduce实现
4.2.4 计数程序的main方法
4.2.5 注意事项
4.2.6 运行结果
4.2.7 Mapper中的Combiner详解
本章小结
第5章 深入!MapReduce配置与测试
5.1 MapReduce环境变量配置详解
5.1.1 使用XML配置新的配置文件
5.1.2 修改已有的配置文件
5.1.3 辅助类ToolRunner、Configured详解
5.2 使用MRUnit对MapReduce进行测试
5.2.1 MRUnit简介与使用
5.2.2 使用MRUnit完成Mapper单元测试
5.2.3 使用MRUnit完成Reduce单元测试
5.2.4 使用MRUnit完成MapReduce单元测试
5.3 在本地磁盘上进行MapReduce测试
5.3.1 伪环境欺骗
5.3.2 在Eclipse中配置Hadoop插件
5.3.3 编写本地测试代码
5.4 MapReduce计数器
5.4.1 使用计数器的MapReduce程序设计
5.4.2 通过Web接口进行任务分析
5.4.3 通过Web接口查看计数器
本章小结
第6章 大象的思考流程——MapReduce运行流程详解
6.1 经典MapReduce任务的工作流程
6.1.1 ClientNode执行任务的初始化
6.1.2 消息传递
6.1.3 MapReduce任务的执行
6.1.4 任务的完成与状态更新
6.2 经典MapReduce任务异常处理详解
6.2.1 MapReduce任务异常的处理方式
6.2.2 MapReduce任务失败的处理方式
6.3 经典MapReduce任务的数据处理过程
6.3.1 Map端的输入数据处理过程
6.3.2 Reduce端的输入数据处理过程
6.3.3 Java虚拟机重用
6.4 MapReduce 2.0(YARN)工作流程详解
6.4.1 YARN概述
6.4.2 YARN任务过程分析
6.4.3 YARN的异常处理
本章小结
第7章 更强的大象——MapReduce高级程序设计续
7.1 MapReduce程序设计默认格式类型详解
7.1.1 map与reduce方法的默认输入输出类型
7.1.2 自定义输入输出类型设置
7.1.3 自定义全局类型变量设置要求
7.1.4 默认的MapReduce程序设置
7.2 InputFormat输入格式详解
7.2.1 输入记录与分区
7.2.2 InputFormat源码及执行过程分析
7.2.3 实现自己的RecordReader类
7.2.4 自定义的FileInputFormat类
7.2.5 一些常用的InputFormat类详解
7.3 OutputFormat输出格式详解
7.3.1 OutputFormat默认输出格式
7.3.2 自定义OutputFormat输出格式
7.3.3 对Reduce任务数进行设置
7.3.4 OutputFormat分区类Partitioner详解
7.4 多种输入与输出使用介绍
7.4.1 MultipleInputs多种输入方式详解
7.4.2 MultipleOutputs多种输出方式详解
本章小结
第8章 MapReduce相关特性详解
8.1 MapReduce计数器
8.1.1 Hadoop框架内置的计数器
8.1.2 自定义计数器
8.1.3 动态计数器
8.1.4 获取计数器值
8.2 排序与查找
8.2.1 普通排序规则与查找
8.2.2 使用MapFile进行排序与查找
8.3 对输出结果的值分组排序
8.3.1 准备工作
8.3.2 对结果进行分组处理
8.3.3 对键的二次排序
8.3.4 自定义输出分组
8.4 编程实战:使用二次排序自动查找最小值
8.4.1 思路分析
8.4.2 验证输入输出结果
8.4.3 对结果进行二次排序
8.4.4 对结果进行分组
8.4.5 分片处理排序与分组
8.4.6 验证结果
本章小结
第9章 啤酒与尿布——MapReduce连接与数据挖掘初步
9.1 对于同样格式数据进行MapReduce连接
9.2 对于不同格式数据进行MapReduce连接
9.3 不能说的秘密——啤酒与尿布
9.3.1 销售清单的秘密
9.3.2 设计程序
9.3.3 程序执行结果
9.4 数据挖掘初步
本章小结
第10章 MapReduce实战编程及深度分析
10.1 编程实战:自定义数据库中读取数据
10.1.1 准备工作
10.1.2 程序分析
10.1.3 自定义SQLInputFormat
10.1.4 使用自定义程序从数据库中读取数据
10.1.5 程序运行及数据分析
10.1.6 使用合并记录进行性能调优
10.2 编程实战:串联寻找共同转载微博
10.2.1 应用分析
10.2.2 第一步表转换
10.2.3 建立关注连接
10.2.4 自定义的OutputFormat
10.2.5 串联解决共同转载微博
10.2.6 性能调优及后续处理
10.3 编程实战:云存储模型
10.3.1 应用分析
10.3.2 Tomcat简介
10.3.3 配置Tomcat服务器
10.3.4 测试Tomcat服务器
10.3.5 在Eclipse中配置Tomcat
10.3.6 创建云存储目录
10.3.7 获取云存储列表
10.3.8 将文件上传至数据云存储中
10.3.9 删除文件
10.3.10 下载云端存储文件
10.3.11 程序执行与性能调优
10.4 编程实战:多文档相似关键字检索
10.4.1 应用分析
10.4.2 自定义任务处理类
10.4.3 程序执行及后续分析
10.5 编程实战:学生成绩整理与分组
10.5.1 应用分析
10.5.2 自定义的ScoreWritable
10.5.3 自定义的MapReduce
10.5.4 自定义的分组
10.5.5 程序运行结果
10.5.6 采用更多分组类型
本章小结
MapReduce 2.0源码分析与编程实战
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×