(甚至比Difference between Pig and Hive? Why have both?更基本的)使用Pig/Hive进行数据处理而不是直接java map缩减代码?
我已经写在数据处理流水线数的Java的map-reduce任务在Hadoop的(我自己的自定义代码,从Hadoop的映射和减速派生)。这是一系列基本操作,例如连接,反转,排序和分组。我的代码涉及到,而不是非常通用的。
继续这种公认的开发密集型方法与使用多个UDF将所有内容迁移到Pig/Hive的优缺点是什么?哪些工作将无法执行?我会受到性能下降的影响吗(与100个TB一起工作)?我会在维护时失去调整和调试代码的能力吗?我将能够将部分作业作为Java map-reduce进行管理,并将其输入输出与我的Pig/Hive作业一起使用?
(我在Twitter上致力于Pig):110-150%的数字有点武断。通常情况下,Pig会比你的代码快得多,因为它做了很多优化。从根本上讲,它将事情转化为MR,所以它不会比MR更快。但简单的初学者到中级MR代码会经常失败。 – SquareCog
Thnx的洞察力。 –