hive、pig和map之间的差异减少用例

mspsb9vt  于 2021-06-02  发布在  Hadoop
关注(0)|答案(4)|浏览(375)

Map缩小、Hive、Pig之间的区别
pig:它是一种数据流语言,它可以处理基本上用于将半结构化、非结构化数据转换为结构化的任何数据,因此可以使用窗口功能等在hive高级分析中使用。
配置单元:处理结构数据并提供sql类型的查询语言。
我知道在后端Pig和Hive都使用MapReduce。
我知道MapReduce对于程序员、hive或者sql的pig来说都是很好的工具
我只想知道我们在hive、pig和map reduce上有没有具体的用例
基本上我们决定我们必须使用pig-here-hive-here或者我们必须使用map-reduce。

p4tfgftt

p4tfgftt1#

map reduce是hadoop的一个内部组件,其他pig和hive是hadoop生态系统,意思是运行在hadoop之上。mapreduce、pig和hive的目的都是以不同的方式处理大量的数据。
mapreduce:apache实现了它。高度推荐的处理整个数据,它的时间消耗和所需的编程技能,如java(高度推荐),pyghon,ruby和其他编程语言。使用mapper和reducer函数对总数据进行聚合和排序。hadoop默认使用它。
hive:facebook实现了它。大多数分析人员,尤其是bigdata分析人员,都使用这个工具来分析数据,尤其是结构数据。后端此配置单元工具使用mapreduce进行处理。在内部配置单元使用称为hql的特殊语言,它是sql语言的子集。如果谁精通sql,他们就可以使用hive。强烈推荐用于面向数据仓库的项目。很难处理非结构化数据,尤其是无模式的数据。
pig:pig是一种脚本语言,由yahoo实现。pig和hive的主要区别在于pig可以处理任何类型的数据,无论是结构化数据还是非结构化数据。这意味着它是高度推荐的流式数据,如卫星生成的数据,现场事件,无模式的数据等。Pig首先加载数据后,程序员写一个程序依赖于数据,使其结构化。谁是编程语言Maven,他们会选择这个hadoop生态系统。

xnifntxz

xnifntxz2#

map reduce:性能优于pig或hive,但需要更多的开发时间。
pig:与map相比,开发时间短但性能差。
hve:sql类型的语言,具有一些很好的特性,比如分区和bucketing,以提高读取性能。此外,hive在读取时强制使用schema。

pod7payv

pod7payv3#

pig是一种数据流语言。这意味着您不能使用if语句或循环。如果你需要做大量的重复,最好是学习mapreduce。
您可以通过将pig嵌入到python脚本中来解决这个问题,但是这将花费更长的时间,因为每次循环都必须加载所有jar文件。
基本上,它归结为你花了多少时间原型与多少生产工作,你有。如果你是数据科学家或分析师,你的大部分工作都是需要大量原型的新项目。这意味着您关心的是快速获得结果。那你更喜欢Pig或 hive 。如果您在一个开发团队中,您希望基于商定的无需测试的方法构建健壮的代码,然后您会更喜欢mapreduce。
像cloudera这样的公司提供了pig、hive和其他hadoop工具包,因此您不必在两者之间进行选择。

z9gpfhce

z9gpfhce4#

pig用于格式化非结构化/半结构化数据格式。假设您的数据中有一个与配置单元时间戳格式不同的时间戳。您可以使用pigudf进行转换并格式化数据。这只是一个解释的示例。您可以使用pig做更多的事情。
hive基本上用于结构化数据。这可能不适用于非结构化数据。这需要更多的时间来执行,因为它转换为mapreduce作业。我建议您使用比hive快得多的impala。

相关问题