
MapReduce
IT新手村小蒋
遇见的都是天意——拥有的都是幸运
展开
-
MapReduce(大数据)
MapReduce 入门:1、 MapReduce定义 Mapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架。 Mapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。2、 MapReduce优缺点 优点 1) **MapReduce易于编程。*...原创 2019-06-25 22:32:45 · 387 阅读 · 0 评论 -
WordCount
WordCount 案例: 1、需求:给定一个文本文件,统计输出文本文件中每个单词出现的总次数。 2、数据文本://文件内容: hello world atguigu atguigu hadoop spark hello world atguigu atguigu hadoop spark hello world...原创 2019-06-25 22:34:57 · 337 阅读 · 0 评论 -
MapReduce 框架 + 切片
MapReduce 框架原理: 1、流程示意图: 2、流程详细: 上面的流程是整个 mapreduce 最全工作流程,但是 shuffle 过程只是从第 7 步开始到第 15 步结束,具体 shuffle 过程详解,如下: 1)maptask 收集我们的 map() 方法输出的 KV 对,放到内存缓冲区中 2)从内存缓冲区不断溢出本地磁盘文件,可能会溢出多个文...原创 2019-06-25 22:37:36 · 310 阅读 · 0 评论 -
Shuffle机制和压缩
Shuffle机制:Mapreduce确保每个reducer的输入都是按键排序的。系统执行排序的过程(即将map输出作为输入传给reducer)称为shuffle。Hadoop 数据压缩:概述:压缩技术能够有效减少底层存储系统(HDFS)读写字节数。压缩提高了网络带宽和磁盘空间的效率。在Hadoop下,尤其是数据规模很大和工作负载密集的情况下,使用数据压缩显得非常重要。在这种情况下,I...原创 2019-06-25 22:39:43 · 469 阅读 · 0 评论 -
Map和Reduce多表合并
MapReduce中多表合并:合并选择: Map:使用于一个小表一个大表 reduce:使用于同时为大表的情况Map端表合并: 优点:适用于关联表中有小表的情形; 可以将小表分发到所有的map节点,这样,map节点就可以在本地对自己所读到的大表数据进行合并并输出最终结果,可以大大提高合并操作的并发度,加快处理速度。代码实现:MapJoin.javapublic cl...原创 2019-06-25 22:42:21 · 578 阅读 · 0 评论 -
Yarn工作机制
Yarn工作机制概述: Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。基本架构: YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。工作机制:解释:资源:在 YARN 的语...原创 2019-06-25 22:46:56 · 437 阅读 · 0 评论 -
MR自定义输入输出
自定义InputFormat:1)需求 无论hdfs还是mapreduce,对于小文件都有损效率,实践中,又难免面临处理大量小文件的场景,此时,就需要有相应解决方案。将多个小文件合并成一个文件SequenceFile,SequenceFile里面存储着多个文件,存储的形式为文件路径+名称为key,文件内容为value。3)分析 小文件的优化无非以下几种方式: (1)在数据采集的时...原创 2019-06-25 22:47:57 · 431 阅读 · 0 评论