Hadoop编程接口简述

Hadoop提供了很多可以直接使用的编程接口,大部分可以直接使用。

整个编程模型位于应用程序层和MapReduce 执行器之间,可以分为两层。第一层是最基本的Java API,主要有5 个可编程组件, 分别是InputFormat、Mapper、Partitioner、Reducer 和OutputFormat 。
Hadoop 自带了很多直接可用的InputFormat、Partitioner 和OutputFormat,大部分情况下,用户只需编写Mapper 和Reducer 即可。第二层是工具层,位于基本Java API 之上,主要是为了方便用户编写复杂的MapReduce 程序和利用其他编程语言增加MapReduce 计算平台的兼容性而提出来的。在该层中,主要提供了4 个编程工具包。
 
1. JobControl :方便用户编写有依赖关系. 的作业,这些作业往往构成一个有向图,所以通常称为DAG(Directed Acyclic Graph)作业,如第2 章中的朴素贝叶斯分类算法
实现便是4 个有依赖关系的作业构成的DAG。
2. ChainMapper/ChainReducer:方便用户编写链式作业,即在 Map 或者 Reduce 阶段存在多个Mapper,形式如下:[MAPPER+ REDUCER MAPPER*]
3. Hadoop Streaming :方便用户采用非 Java 语言编写作业,允许用户指定可执行文件或者脚本作为Mapper/Reducer。
4. Hadoop Pipes:专门为 C/C++ 程序员编写 MapReduce 程序提供的工具包。


注:文中内容引自《Hadoop技术内幕-深入解析Mapreduce框架设计与实现原理

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值