Yahoo持续的Pig/Hadoop(MapReduce)工作流

七月 25th, 2011 by klose | No Comments | Filed in mapreduce

最近在Sigmod2011年大会上,Yahoo公司publish了一篇文章叫做Nova:Continuous Pig/Hadoop Workflows.由于小弟之前一直关注MapReduce工作流的优化,而且毕业开题的方向也和这篇文章的Motivation有些相近,就抽时间研读了一下。 Nova这篇文章是Christopher在Yahoo研究院做的一项工作,Chris长期钻研MapReduce工作流,之前大名鼎鼎的Pig 就是出于此人,还做了很多关于Pig上的优化工作。他的主页上publication和相关经历,在学术界(Stanford、CMU、Berkeley)以及工业界Yahoo都有很大的影响力。 Nova是一个数据流管理器,支持有状态的增量数据计算模式。文章的题目是Continuous,在写的Blog的名字的时候,我一直想不到一个非常恰如其分的翻译出来。Continuous在看完整篇文章之后,翻译成流动的可能会更适合一些。 应用需求和背景 在Pig诞生之前,我们要实现

MapReduce中间数据存储方式的比较

七月 1st, 2011 by klose | No Comments | Filed in mapreduce

MapReduce的中间数据可以主要有三个值Key、Value、Partition,由于MapReduce的中间数据需要存储文件。有两种选择: 1)key,value,Partition组织成一个可序列化类,实例化成对象,然后写入文件。 KVPair为描述了key、value、partition三元组 import java.io.Serializable; public class KVPair implements Serializable{     private static final long serialVersionUID = 1L;     private String Key;     private int value;     private int partition;     public KVPair() {     }     public KVPair(String key, int value, int partition) {         this.Key = key;         this.value = value;         this.partition = partition;     }     public