logo资料库

05_尚硅谷大数据技术之Hadoop(MapReduce).docx

第1页 / 共132页
第2页 / 共132页
第3页 / 共132页
第4页 / 共132页
第5页 / 共132页
第6页 / 共132页
第7页 / 共132页
第8页 / 共132页
资料共132页,剩余部分请下载后查看
第1章 MapReduce概述
1.1 MapReduce定义
1.2 MapReduce优缺点
1.2.1 优点
1.2.2 缺点
1.3 MapReduce核心思想
1.4 MapReduce进程
1.5 官方WordCount源码
1.6 常用数据序列化类型
1.7 MapReduce编程规范
1.8 WordCount案例实操
第2章 Hadoop序列化
2.1 序列化概述
2.2 自定义bean对象实现序列化接口(Writable)
2.3 序列化案例实操
第3章 MapReduce框架原理
3.1 InputFormat数据输入
3.1.1 切片与MapTask并行度决定机制
3.1.2 Job提交流程源码和切片源码详解
3.1.3 FileInputFormat切片机制
3.1.4 CombineTextInputFormat切片机制
3.1.5 CombineTextInputFormat案例实操
3.1.6 FileInputFormat实现类
3.1.7 KeyValueTextInputFormat使用案例
3.1.8 NLineInputFormat使用案例
3.1.9 自定义InputFormat
3.1.10 自定义InputFormat案例实操
3.2 MapReduce工作流程
3.3 Shuffle机制
3.3.1 Shuffle机制
3.3.2 Partition分区
3.3.3 Partition分区案例实操
3.3.4 WritableComparable排序
3.3.5 WritableComparable排序案例实操(全排序)
3.3.6 WritableComparable排序案例实操(区内排序)
3.3.7 Combiner合并
3.3.8 Combiner合并案例实操
3.3.9 GroupingComparator分组(辅助排序)
3.3.10 GroupingComparator分组案例实操
3.4 MapTask工作机制
3.5 ReduceTask工作机制
3.6 OutputFormat数据输出
3.6.1 OutputFormat接口实现类
3.6.2 自定义OutputFormat
3.6.3 自定义OutputFormat案例实操
3.7 Join多种应用
3.7.1 Reduce Join
3.7.2 Reduce Join案例实操
3.7.3 Map Join
3.7.4 Map Join案例实操
3.8 计数器应用
3.9 数据清洗(ETL)
3.9.1 数据清洗案例实操-简单解析版
3.9.2 数据清洗案例实操-复杂解析版
3.10 MapReduce开发总结
第4章 Hadoop数据压缩
4.1 概述
4.2 MR支持的压缩编码
4.3 压缩方式选择
4.3.1 Gzip压缩
4.3.2 Bzip2压缩
4.3.3 Lzo压缩
4.3.4 Snappy压缩
4.4 压缩位置选择
4.5 压缩参数配置
4.6 压缩实操案例
4.6.1 数据流的压缩和解压缩
4.6.2 Map输出端采用压缩
4.6.3 Reduce输出端采用压缩
第5章 Yarn资源调度器
5.1 Yarn基本架构
5.3 Yarn工作机制
5.4 作业提交全过程
5.5 资源调度器
5.6 任务的推测执行
第6章 Hadoop企业优化
6.1 MapReduce 跑的慢的原因
6.2 MapReduce优化方法
6.2.1 数据输入
6.2.2 Map阶段
6.2.3 Reduce阶段
6.2.4 I/O传输
6.2.5 数据倾斜问题
6.2.6 常用的调优参数
6.3 HDFS小文件优化方法
6.3.1 HDFS小文件弊端
6.3.2 HDFS小文件解决方案
第7章 MapReduce扩展案例
7.1 倒排索引案例(多job串联)
7.2 TopN案例
7.3 找博客共同好友案例
第8章 常见错误及解决方案
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 尚硅谷大数据技术之 Hadoop(MapReduce) (作者:尚硅谷大数据研发部) 版本:V2.0 第 1 章 MapReduce 概述 1.1 MapReduce 定义 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 1.2 MapReduce 优缺点 1.2.1 优点 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 1.2.2 缺点 1.3 MapReduce 核心思想 MapReduce 核心编程思想,如图 4-1 所示。 图 4-1 MapReduce 核心编程思想 1)分布式的运算程序往往需要分成至少 2 个阶段。 2)第一个阶段的 MapTask 并发实例,完全并行运行,互不相干。 3)第二个阶段的 ReduceTask 并发实例互不相干,但是他们的数据依赖于上一个阶段的所有 MapTask 并发实例的输出。 4)MapReduce 编程模型只能包含一个 Map 阶段和一个 Reduce 阶段,如果用户的业务逻辑 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 非常复杂,那就只能多个 MapReduce 程序,串行运行。 总结:分析 WordCount 数据流走向深入理解 MapReduce 核心思想。 1.4 MapReduce 进程 1.5 官方 WordCount 源码 采用反编译工具反编译源码,发现 WordCount 案例有 Map 类、Reduce 类和驱动类。且 数据的类型是 Hadoop 自身封装的序列化类型。 1.6 常用数据序列化类型 表 4-1 常用的数据类型对应的 Hadoop 数据序列化类型 Java 类型 boolean byte int float long double String map array 1.7 MapReduce 编程规范 Hadoop Writable 类型 BooleanWritable ByteWritable IntWritable FloatWritable LongWritable DoubleWritable Text MapWritable ArrayWritable 用户编写的程序分成三个部分:Mapper、Reducer 和 Driver。 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 1.8 WordCount 案例实操 1.需求 在给定的文本文件中统计输出每一个单词出现的总次数 (1)输入数据 hello.txt (2)期望输出数据 atguigu 2 banzhang 1 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 1 cls 2 hadoop jiao 1 ss 2 xue 1 2.需求分析 按照 MapReduce 编程规范,分别编写 Mapper,Reducer,Driver,如图 4-2 所示。 图 4-2 需求分析 3.环境准备 (1)创建 maven 工程 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(MapReduce) ——————————————————————————— —— (2)在 pom.xml 文件中添加如下依赖 junit junit RELEASE org.apache.logging.log4j log4j-core 2.8.2 org.apache.hadoop hadoop-common 2.7.2 org.apache.hadoop hadoop-client 2.7.2 org.apache.hadoop hadoop-hdfs 2.7.2 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
分享到:
收藏