Apache Pig简介

1. Apache Pig

在本章中,提供了Apache Pig基于Apache的MapReduce高级工具的基本介绍。 本章可以帮助那些从事Hadoop工作的专业人士,并希望使用高级脚本语言执行MapReduce操作,而不是使用Java开发复杂代码。

1542442369837837.png

2. Apache PIg介绍

Apache Pig 的历史

作为雅虎2006年的一个研究项目,开发Apache Pig是为了在大型数据集上创建和执行MapReduce作业。在2007年,Apache Pig开源,2008年晚些时候,Apache Pig首次发布。

Apache Pig简介

Pig是为了简化编写复杂的Java代码来执行MapReduce作业的负担而创建的。早期的Hadoop开发人员必须编写复杂的Java代码才能执行数据分析。 Apache Pig提供了一种称为Pig Latin的高级语言,可帮助Hadoop开发人员编写数据分析程序。通过使用Pig Latin语言提供的各种运算符,程序员可以开发自己的函数来读取,写入和处理数据。

为了使用Apache Pig执行分析,程序员必须使用Pig Latin语言编写脚本来处理存储在Hadoop分布式文件系统中的数据。在内部,所有这些脚本都转换为Map和Reduce任务。在Pig中存在一个称为Pig Engine的组件,其中Pig Latin脚本作为输入,并将这些脚本转换为Map-Reduce作业。

Apache Pig 的必要性

对于所有那些通常不太擅长Java的程序员来说,为了处理Hadoop,尤其是当他们需要执行任何MapReduce任务时,必须付出很大努力。 Apache Pig是所有这些程序员的有用工具。

不需要开发复杂的Java代码来执行MapReduce任务。通过简单地编写Pig Latin脚本,程序员现在可以轻松执行MapReduce任务,而无需使用Java编写复杂代码。

Apache Pig缩短了代码的长度。例如,要执行操作,我们需要用Java编写200行代码,只需在Apache Pig中输入少于10行的代码即可轻松执行。因此,使用Apache Pig最终可以缩短近16倍的开发时间。

如果开发人员具有SQL语言知识,那么学习Pig Latin语言非常容易,因为它与SQL语言相似。

Apache Pig提供了许多内置运算符来支持数据操作,如filter,join,order等。此外,Pig还提供了不存在于MapReduce中的嵌套数据类型,如元组,bags和映射。

Apache Pig的特点

Apache Pig具有以下独特功能:

1542442463980501.png

丰富的操作符集:Pig由一组丰富的操作符集合组成,以执行诸如join,filter,order等操作。

易于编程:Pig Latin与SQL类似,因此开发人员编写Pig脚本变得非常容易。如果您有SQL语言的知识,那么学习Pig Latin非常容易,因为它与SQL语言相似。

优化:Apache Pig中的任务执行由任务本身自动优化,因此程序员只需关注语言的语义。

可扩展性:通过使用现有的运算符,用户可以轻松开发自己的函数来读取,处理和写入数据。

用户定义函数(UDF's):借助Pig提供的创建UDF的工具的帮助,我们可以很容易地在多种编程语言(如Java)上创建用户定义函数,并将它们调用或嵌入到Pig脚本中。

所有类型的数据处理:分析所有类型的数据(即结构化和非结构化)都由Apache Pig提供,结果存储在HDFS中。

Apache Pig简介

发表评论

邮箱地址不会被公开。 必填项已用*标注

30 − = 二十 六

滚动到顶部