1. hadoop 作业构成
1.1 hadoop作业执行流程
用户配置并将一个hadoop作业提到hadoop框架中,hadoop框架会把这个作业分解成一系列map tasks 和reduce tasks。hadoop框架负责task分发和执行,结果收集和作业进度监控。
下图给出了一个作业从开始执行到结束所经历的阶段和每个阶段被谁控制(用户 or hadoop框架)。
下图详细给出了用户编写mapredue作业时需要进行那些工作以及hadoop框架自动完成的工作:
在编写mapreduce程序时,用户分别通过inputformat和outputformat指定输入和输出格式,并定义mapper和 reducer指定map阶段和reduce阶段的要做的工作。在mapper或者reducer中,用户只需指定一对key/value的处理逻辑,hadoop框架会自动顺序迭代解析所有key/value,并将每对key/value交给mapper或者reducer处理。表面上看来,hadoop限定数据格式必须为key/value形式,过于简单,很难解决复杂问题,实际上,可以通过组合的方法使key或者value(比如在 key或者value中保存多个字段,每个字段用分隔符分开,或者value是个序列化后的对象,在mapper中使用时,将其反序列化等)保存多重信息,以解决输入格式较复杂的应用。
2.2 用户的工作
用户编写mapreduce需要实现的类或者方法有:
1) inputformat接口
用户需要实现该接口以指定输入文件的内容格式。该接口有两个方法。
public interface inputformat
public static class reduce extends mapreducebase implements
reducer
public void reduce(text key, iterator values,outputcollector output, reporter reporter)throws ioexception
int sum = 0;
while (
sum +=
new intwritable(sum));
public static void main(string args) throws exception
jobconf:map/reduce的job配置类,向hadoop框架描述map-reduce执行的工作。
构造方法:jobconf()、jobconf(class exampleclass)、jobconf(configuration conf)等。
jobconf conf = new jobconf(
wordcount");设置一个用户定义的job名称为job的输出数据设置key类。
//为job输出设置value类。
过程作业格式
生活中的人机问题调研报告。人机工程设计过程考核i 班级 学号 姓名指导教师 一 不合理的人机设计 1.某某设计问题 小标题四号宋体加黑 正文宋体小四号。二 合理的人机设计。1 某某设计 小标题四号宋体加黑 正文宋体小四号。银亭的人机尺寸设计。人机工程设计过程考核ii 班级 学号 姓名指导教师 小标题...
过程检测作业
标准氢电极的电极电位是多少?它的双电层电位差又是多少?2 玻璃电极在工作时玻璃膜中是否有电荷通过?电极电位检测系统对测量电极和参比电极有何要求?3 电极电位检测器对参比电极和测量电极各有何要求?举例说明两种参比电极和两种测量电极。4 固态参比电极和甘汞电极有何区别?5 写出工业酸度计电极电位表示式。...
随机过程作业
1.1 离散型。求 1.2 连续型。设求。1.3 设x,y相互独立。求 x,y 的联合分布函数。1.4 某一医药公司8月份和9月份收到的青霉素针剂的订货单数分别记为x和y。据以往积累的资料知x和y的联合分布律为。求 1 在x 51的条件下,y的条件概率分布。2 在x 51的条件下,y的条件分布函数。...