Pig如何处理非结构化数据而Hive不能处理?

时间:2013-01-12 11:16:09

标签: comparison hive apache-pig

根据this和其他参考资料,Pig比Hive更好地处理非结构化数据。因此,数据首先用Pig清理,然后用Hive处理。

  

但是,在数据工厂中,数据可能尚未处于良好的标准化状态。这使得Pig非常适合这个用例,因为它支持部分或未知模式的数据,以及半结构化或非结构化数据。

想了解更多Pig如何处理非结构化数据,而Hive则不能。

2 个答案:

答案 0 :(得分:2)

Pig构建用于处理模式较少的数据集。在hive中,我们强制执行存储在derby中的模式,或者可以配置为存储在mysql中。现在还不清楚你在寻找什么!

答案 1 :(得分:0)

Pig和Hive的主要区别在于Pig是一种数据流语言,而Hive是一种声明性语言。话虽如此,Pig可以处理未定义架构的非结构化数据,而Hive需要架构。此外,在某些情况下,Pig还可以用于将数据与架构连接,从而使其优先于Hive。相比之下,Hive将Hadoop转换为数据仓库,其行为类似于SQL方言。最后,您可能想知道Jaql是另一种数据流语言。与Pig不同,它的原生数据结构格式是JSON。同样,Jaql不需要架构。希望这会有所帮助。