linux怎么查看本机内存大小
323
2022-11-15
MapReduce学习
一、MapReduce(分布式计算框架)
一)MapReduce概述
1、MapReduce介绍
源自于Google的MapReduce论文,发表于2004年12月,Hadoop MapReduce是Google MapReduce的克隆版。
MapReduce是一种分布式计算模型,泳衣进行大数据量的计算。他屏蔽了分布式计算框架细节,将计算抽象成map和reduce两部分。
map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果。reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。
MapReduce非常适合大量计算机组成的分布式并行环境里进行数据处理。
2、MapReduce的不足
及时的结果返回
像oracle、MySQL一样,毫秒级和秒级返回结果
流式计算
MapReduce自身的设计特点,决定了数据源必须是静态的
工作流/DAG计算
多个应用之间的关系依赖
3、实例
例子:词频统计
统计某年所有文中出现最多的单词
把问题分解:
把一批文件(TB级甚至PB级),统计这些文件中单词出现的次数
方案:分别统计每个文件单词出现的次数,然后累加到不同文件中同一个单词出现的次数——典型的MapReduce
输入格式————文本,语句行
输出格式————单词,出现次数(
4、MapReduce工作原理
MapReduce作业(MapReduce Job)
分为map阶段及reduce阶段map阶段并行将输入数据集分片,并完成转换操作MapReduce整理(shuffle)map阶段的运行结果,作为reduce阶段的输入数据的输入输出都是文件系统上完成的
二)MapReduce编程模型
MapReduce将作业的整个运行过程分成两个阶段
Map和Reduce
Map阶段由一定Map Task组成
输入数据格式解析:InputFormat输入数据处理:Mapper数据分组:Partitioner
Reduce阶段由一定数量的Reduce Task组成
数据按照key排序数据处理:Reducer数据输出格式:OutputFotmat
三)替代MapReduce的产品
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~