当前位置: Oracle DBA培训网-优技培训 >> Hadoop大数据 > Hadoop培训教程 >

Hadoop入门教程:MapReduce编程接口体系结构

Hadoop入门教程:MapReduce编程接口体系结构

Hadoop入门教程:MapReduce编程接口体系结构,MapReduce编程模型对外提供的编程接口体系结构如图所示,整个编程模型位于应用程序层和MapReduce执行器之间,可以分为两层。

第一层是最基本的Java API,主要有5个可编程组件,分别是InputFormat、Mapper、Partitioner、Reducer和OutputFormat。Hadoop自带了很多直接可用的InputFormat、Partitioner和OutputFormat,大部分情况下,用户只需编写Mapper和Reducer即可。

第二层是工具层,位于基本Java API之上,主要是为了方便用户编写复杂的MapReduce程序和利用其他编程语言增加MapReduce计算平台的兼容性而提出来的。在该层中,主要提供了4个编程工具包。

JobControl:方便用户编写有依赖关系的作业,这些作业往往构成一个有向图,所以通常称为DAG(Directed Acyclic Graph)作业,如第2章中的朴素贝叶斯分类算法实现便是4个有依赖关系的作业构成的DAG。

ChainMapper/ChainReducer:方便用户编写链式作业,即在Map或者Reduce阶段存在多个Mapper,形式如下:

[MAPPER+ REDUCER MAPPER*]

Hadoop Streaming:方便用户采用非Java语言编写作业,允许用户指定可执行文件或者脚本作为Mapper/Reducer。

Hadoop Pipes:专门为C/C++程序员编写MapReduce程序提供的工具包。

技术沙龙MORE+

标签错误:<!-- #Label# labelId=20160707140604 moduleId=1 classId=12231768634 orderby=2 fields=url,title,u_info attribute= datatypeId=22192428132 recordCount=3 pageSize= <htmlTemplate><dt><img src="/images/index_26${index}.jpg" width="100" height="62" /><a href="$url" title="${title}">${title}</a><span>${api.left(u_info,60)}</span></dt></htmlTemplate> -->
我要参加技术沙龙