主页 > 新闻资讯 > 大数据学习:MapReduce应用场景

大数据学习:MapReduce应用场景

作者:张老师 浏览次数: 2020-12-03 17:09
MapReduce最初进入我们的实现,是作为Hadoop的核心计算引擎,负责分布式计算,也作为编程模型使用。在整个Hadoop生态当中,MapReduce的影响意义是深远的,也是第一代计算框架代表产品。今天的大数据学习分享,我们就来讲讲MapReduce应用场景相关的知识。

大数据学习:MapReduce应用场景

首先,MapReduce的设计初衷就是为了大规模数据集的批量处理,提升整体的数据处理效率,而MapReduce诞生之初,典型的应用就是使用MapReduce进行长句切割,然后进行词频统计,这也为MapReduce的应用场景埋下了伏笔。

MapReduce的计算流程

简单来说,Mapreduce的运算过程就是进行拆解-排序-汇总,解决的就是统计的问题,使用的思想就是分治的思想。

整个过程就是先读取文件,接着进行split切割,变成一个一个的词,然后进行map task任务,排列出所有词的统计量,接着sorting排序,按照字典序来排,接着就是进行reduce task,进行了词频的汇总,最后一步就是输出为文件。

其中对应着的是Hadoop Mapreduce对外提供的五个可编程组件,分别是InputFormat、Mapper、Partitioner、Reduce和OutputFormat。

MapReduce的应用场景

MapReduce的产生是为了把某些大的问题分解成小的问题,然后解决小问题后,大问题也就解决了。那么一般有什么样的场景会运用到呢?这里据几个非常典型的例子——

计算URL的访问频率

搜索引擎的使用中,会遇到大量的URL的访问,可以使用MapReduce来进行统计,得出(URL,次数)结果,在后续的分析中可以使用。

倒排索引

Map函数去分析文件格式是(词,文档号)的列表,Reduce函数就分析这个(词,文档号),排序所有的文档号,输出(词,list(文档号)),这个就可以形成一个简单的倒排索引,是一种简单的算法跟踪词在文档中的位置。

Top K问题

在各种的文档分析,或者是不同的场景中,经常会遇到关于Top K的问题,例如输出这篇文章的出现前5个最多的词汇。这个时候也可以使用MapReduce来进行统计。

关于大数据学习,MapReduce应用场景,以上就为大家做了简单的介绍了。MapReduce虽然在现在的大数据技术生态当中,需要实际编程的任务很少,但是该学还是得学。加米谷大数据,专业大数据培训机构,大数据开发,数据分析与挖掘,本月正在招生中,课程大纲及试学视频可联系客服获取!
热点排行
推荐文章
立即申请>>