关于MAPREDUCDE论文的读后感
mapreduce作为谷歌发表的关于大数据技术有关的论文之一, 其主要讲的是关于mapreduce的工作原理,容错性,技术性,性能。
关于工作原理,在link https://www.zhihu.com/question/23345991/answer/53996060
有通俗的介绍.概括性的来说就是引入巨大的数据集交给master调度,master将其分成若干份map交给worker来做,mapper将其产生的结果传递给reducer,再由reducer进行统计汇总整理出最终的结果。mapreduce的这种处理方法能将巨大的数据集提炼出想要的结果,十分的方便与简洁。当然在我提供的链接与谷歌发表的mapreduce论文当中也进行了举例,理解起来还是十分容易的。下图也能助于理解
关于容错性,文中具体讲到了一些故障处理的机制。以下我做简要说明,1 对于worker故障。如果在一定的时间内没有得到其消息的反馈就会视其失效,然后将其分配给其他的worker去完成。2 对于master失效就就中止 MapReduce 运算。客户可以检查到这个状态,并且可以根据需要重新执行 MapReduce操作。3对于非确定性的操作,就由mapreduce进行两次的reduce操作是结果的失效弱化。4对于“落伍者”(处理map或reduce任务耗时较长)的现象,会采用调度备用去处理“落伍者"的工作.
关于 技术性,采用了分区函数来指定输出的数据R,同时对所产生的key值增量进行顺序处理,再采用Combiner 函数将相同的key值结合在一起,并且我们可以预定义一些自己想得到的数据类型产生所对应的数据结果,还有跳过损坏的记录,对于bug调试的方法,还有了多少任务、有多少任务正在处理、输入的字节数、中间数据的字节数、输出的字节数、处理百分比等等的状态信息的显示,还有计数器能累加一些数值。
关于 性能当有调度任务备用以及处理失效worker是其效率最高。
以上就是我对于mapreduce的理解.