3

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

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

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

4

2 回答 2

2

Pig 是为处理无模式数据集而构建的。而在 hive 中,我们强制使用存储在 derby 中或可以配置为存储在 mysql 中的模式。现在尚不清楚您在寻找什么!

于 2013-01-12T17:34:04.583 回答
0

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

于 2014-03-13T22:17:02.237 回答