MapReduce特点

云计算 waitig 571℃ 百度已收录 0评论

MapReduce特点

适合数据复杂度运算
不适合算法复杂度的运算
不适合实时计算、流式计算、DAG有向图计算
综上,要求算法足够简单,数据可以足够大!

MapReduce架构

采用Master/Slave

执行流程

Map算法Reduce数据
从HDFS出来Split[0,1,……],用getsplit()分片。Split数量决定MapTask数量,即MapTask数量无法自己决定。
Map主要就是用来对数据进行切分。
Partitioner通过返回确定reduce数量,

hello world --无需split-->hello world---recordreader-->
hello hadoop             hello hadoop

<O,hello word>---map---><hello,1><world,1>---无需partitioner--->
<O,hello word>         <hello,1><hadoop,1> 

---combine---><hello,1,1><world,1><hadoop,1>---无需copy--->
---reduce---><hello,2><world,1><hadoop,1>--->output
1.23 0.91--split-->10000点坐标--recordreader--><0,1.23 0.91>
1.45 1.11                                    <0,1.45 1.11 >
0.22 0.25                                    <0,0.22 0.25 >
--map-->截取浮点数,算出距离,记录是否在圆内--><O,1>--无需partitioner-->
                                         <O,0>
                                         <O,1>
--combine--><0,1 1 1 1 1>--无需copy-->--reduce--><0,n> n*4/10000

本文由【waitig】发表在等英博客
本文固定链接:MapReduce特点
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)