Pig和Hive的对比

Pig编程

Pig是一种编程语言,它简化了Hadoop常见的工做任务。Pig可加载数据、表达转换数据以及存储最终结果。Pig内置的操做使得半结构化数据变得有意义(如日志文件)。同时Pig可扩展使用Java中添加的自定义数据类型并支持数据转换。编程语言

 

Hive分布式

Hive在Hadoop中扮演数据仓库的角色。Hive添加数据的结构在HDFS(hive superimposes structure on data in HDFS),并容许使用相似于SQL语法进行数据查询。与Pig同样,Hive的核心功能是可扩展的。工具

 

何时用Pig?oop

当你须要处理非格式化的分布式数据集时,若是想充分利用本身的SQL基础,能够选择Pig。使用Pig你无需本身构建MapReduce任务,有SQL背景的话学习起来比较简单,开发速度也很快。性能

 

何时用Hive?学习

有时咱们须要收集一段时间的数据来进行分析,而Hive就是分析历史数据绝佳的工具。要注意的是数据必须有必定的结构才能充分发挥Hive的功能。用Hive来进行实时分析可能就不是太理想了,由于它不能达到实时分析的速度要求(实时分析能够用HBase,Facebook用的就是HBase)。日志

 

注意:开发

尽管Pig性能强劲,要使用它开发人员必须掌握SQL以外的新知识,而Hive则与SQL很是相像。尽管Hive查询语言HQL的命令有所局限,它仍是取得了必定的成功。Hive为MapReduce提供了优秀的开源实现,它在分布式数据处理的同时避免了SQL对于数据存储的局限。get

因此如今使用Hive比较多,基本上不多用Pig!!!

相关文章
相关标签/搜索