什么是Apache Pig
Apache Pig是用于执行Hadoop MapReduce程序的高级数据流平台。 Pig的语言是Pig Latin。
Pig脚本在内部转换为Map Reduce作业,并在HDFS中存储的数据上执行。除此之外,Pig还可以在Apache Tez或Apache Spark中执行其工作。
Pig可以处理任何类型的数据,即结构化,半结构化或非结构化数据,并将相应的结果存储到Hadoop数据文件中系统。使用PIG可以完成的每个任务,也可以使用MapReduce中使用的Java来实现。
Apache Pig的功能
让我们看看Pig技术的各种用法。
1)易于编程
为非程序员编写复杂的Java程序以进行map reduce相当困难。 Pig使此过程变得容易。在Pig中,查询在内部转换为MapReduce。
2)优化机会
通过这种方式编码任务,系统可以自动优化其执行,
3)可扩展性
编写了用户定义的函数,用户可以在其中编写其逻辑以执行
4)灵活
它可以轻松处理结构化和非结构化数据。
5)内置运算符
它包含各种类型的运算符,例如排序,过滤和联接。
Apache MapReduce与PIG之间的区别
Apache MapReduce |
Apache PIG |
这是一个低级的数据处理工具。 |
它是高级数据流工具。 |
在这里,需要使用Java或Python开发复杂的程序。 |
不需要开发复杂的程序。 |
在MapReduce中执行数据操作很困难。 |
它提供了内置的运算符来执行数据操作,例如联合,排序和排序。 |
它不允许嵌套数据类型。 |
它提供了嵌套的数据类型,例如元组,包和地图。 |
Apache Pig的优点
代码更少-Pig只需较少的代码行即可执行任何操作。
可重用性-Pig代码足够灵活,可以再次重用。
嵌套数据类型-Pig提供了一个有用的概念,例如元组,包和地图等嵌套数据类型。