Apache Pig和Hadoop的实现

时间:2013-04-28 03:14:03

标签: hadoop apache-pig

我了解到Pig是基于Apache Hadoop构建的。但是我无法找到猪所具有的缺乏hadoop实现的额外功能。是什么原因导致需要像Pig Latin这样的语言? Hadoop缺少什么?

1 个答案:

答案 0 :(得分:2)

引自wiki:

  

Pig是一个用于创建MapReduce程序的高级平台   Hadoop。这个平台的语言叫做Pig Latin。猪拉丁文   将编程从Java MapReduce成语抽象为a   使MapReduce编程高水平的符号,类似于此   用于RDBMS系统的SQL。 Pig Latin可以使用UDF扩展(用户   定义函数)用户可以用Java,Python或   JavaScript然后直接从语言中调用。

现在,上面的关键字是高级摘要。我们拥有可以在不了解任何主要编程语言但可以创建SQL的情况下创建/管理数据库的DBA的方式,类似地,我们可以让数据工程师使用Pig创建/管理数据管道/仓库,而无需考虑如何/正在进行的复杂性作为hadoop作业实现/执行。 所以,回答你的问题,Pig并不是在它缺乏的任何功能上补充Hadoop,但它只是一个基于hadoop的高级框架,可以更快地完成任务(开发时间)。

你当然可以做猪与Hadoop一起做的所有事情,但尝试猪的一些高级功能,为他们写一些hadoop工作将需要一些真正的好时光。所以,非常自由地说,在数据工程中通用/通用的一些任务已经在Pig的形式中以裸的hadoop实现,你只需要在Pig-Latin中告诉它执行。