MapReduce分布式计算框架
MapReduce 的论文是大数据的老底子经典了,Google 的 MapReduce 架构讲得透,思路也清晰,没那么多花里胡哨。
映射的 Map,归并的 Reduce,名字听着复杂,其实就是把任务分块后并行干活,把结果合起来,效率挺高的。你要是搞分布式计算或者 Hadoop,没读过这篇,确实有点说不过去。
键值对是 MapReduce 整个模型的基本单位,输入是(key, value)
,输出还是(key, value)
,中间还带个自动的shuffle
和sort
,你就不用自己操心数据怎么合并。
容错机制也蛮强,任务挂了会重试,数据还会自动复制,挺适合海量数据的场景。像搜索引擎
、日志
、机器学习
预这类活儿,用 MapReduce 还是挺稳的。
,它也不是万能的,像实时计算或者那种要频繁交互的应用,就有点吃力。这时候你可以看看后面提到的Spark、Flink,更适合干这种事儿。
想深入的话,我推荐几个不错的资源,像大数据模型及 MapReduce这篇,讲得还蛮直白的;还有Hadoop 架构文档,搭配起来看更清楚。
,这篇 MapReduce 论文,就像开山斧,搞大数据的你,早点读明白,后面的 Spark 和 Flink 才好上手。
下载地址
用户评论