MapReduce解析之Map,Context,Reduce
Posted 沉默的赌徒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MapReduce解析之Map,Context,Reduce相关的知识,希望对你有一定的参考价值。
要理解MapReduce,就必须理解其框架结构,把这三者放在一起讲是为了便于大家理解。
也就是两大组件Map与Reduce
首先看看Map
(声明:这里感谢Pig2的文章,对我启发很大,也顺便引用一下她的一些东西)
首先看看Map类中包含哪些方法:
首先看看run方法,它就像是一个控制器
很明显,Map中的run方法遵循setup--->map----->cleanup
setup源码:
很明显,只传入了一个context对象
那么这个Context对象究竟为何物
Context,中文释义:环境,背景,上下文
很明显,开发过android的人肯定知道,在Context就是一个保存所有信息的中介桥梁,与java中的session有着异曲同工之妙
Context包含了几乎关于这个任务的所有信息
那么问题就over了,很明显传入这个context对象就像传入一个session来记录一些信息的,避免信息错乱
好的,再重新回过头看看run方法中的map方法,很显然,这就是我们通常普通用户需要进行更改的
它的最大用处就是对信息进行预处理,让最后得到的
以上是关于MapReduce解析之Map,Context,Reduce的主要内容,如果未能解决你的问题,请参考以下文章
大数据之Hadoop(MapReduce):shuffle之MapTask工作机制
hadoop中setup,cleanup,run和context讲解