当前位置: 100md首页 > 电子书籍 > 资料下载2021 > 未分类2
编号:46510
Pig编程指南.pdf
http://www.100md.com 2020年11月19日
第1页
第7页
第12页
第23页
第36页

    参见附件(40451KB,210页)。

    《Pig编程指南》不仅为初学者讲解ApachePig的基础知识,同时也向有一定使用经验的高级用户介绍更加综合全面的Pig重要特性,如PigLatin脚本语言、控制台shell交互命令以及用于对Pig进行拓展的用户自定义函数(UDF)等

    谁应该读这本书

    这本书是为Pig开发者准备的,无论是新手还是具有一定经验的开发者。之前从没有接触过Pig的人会在书中发现一些有用的入门性介绍,包括如何运行Pig以及怎么开始书写Pig Latin脚本。对于经验丰富的Pig使用者,这本书介绍了Pig几乎所有的功能:它可以从使用哪些不同的模式运行,Pig Latin语言的详细介绍,以及如何在Pig中开发用户自定义函数(UDF),甚至对于那些使用Pig很久的用户也可能会在这本书里发现之前他们从未使用过的功能。

    作为一个相对年轻的项目,在过去的4年里Pig有了相当大的变化和成长。在这段时间里,我们从发布0.1版本一直到发布0.9版本。本书是以Pig 0.7版本为基础展开的。对于0.8或0.9版本中特有的功能,书中在介绍的时候会进行说明。0.6版本到0.7版本的最大不同是对加载函数接口和存储函数接口这两个接口进行了重写,因此第11章的内容对于使用0.6或更低版本的用户是不适用的。当然,本书其他章节对于较早版本同样适用。

    对于读者和Pig使用者来说,如果对Hadoop有所了解,那么阅读本书是有帮助的。附录B对Hadoop进行了简要的介绍而且说明了它是如何工作的。第1.1.1小节"Pig是基于Hadoop的”提供了一个简单的Hadoop任务的例子。对于那些不熟悉Hadoop的用户,这几节介绍的内容将会有很大帮助。

    本书中有几部分用到了Java,Python和SQL的程序片段。使用Pig并非要求一定要了解这些语言,但是对于Pig的一些高级功能还是需要对Python和Java有所了解。有使用SQL背景的读者可以在1.1.2小节下面的“查询语言和数据流语言的比较”这一小节看到Pig Latin和SQL的相似和不同之处。

    通过学习本书,你将能够

    深入了解Pig数据模型,包括基本数据类型和复杂数据类型。

    通过Pig Latin脚本对数据进行排序、分组、连接、投影以及过滤。

    使用Grunt处理Hadoop分布式文件系统(HDFS).

    使用Pig的宏命令和模块化特性创建复杂的数据处理流。

    在Python中嵌入Pig Latin脚本实现送代处理过程以及其他高级任务。

    创建用户自定义的加载和存储函数来处理新的数据格式和存储机制。

    掌握更高效地在Hadoop集群中运行脚本的方法和技巧。

    Pig是什么?

    Pig提供了一个基于Hadoop的并行地执行数据流处理的引擎。它包含了一种脚本语言,称为Pig Latin,用来描述这些数据流。Pig Latin本身提供了许多传统的数据操作

    (如join,sort,filter等),同时允许用户自己开发一些自定义函数用来读取、处理和写数据。

    Pig是一个Apache开源项目。这意味着用户可以源码或者二进制包,自由使用它,对这个项目贡献自己的代码,同时也可以在Apache License的许可范围下将Pig用到自己的产品中或者在需要的时候修改代码来满足特定需求。

    为什么叫做Pig

    有一个问题经常被问起,那就是“为什么把它命名为Pig?"人们还想知道是否Pig这个词是由缩写字母组成的。回答是否定的。事实上最初开发这个项目的研究人员只是简单地把它称为“那种语言。”不过他们终究需要为它起个名字。一名研究人员的脑海中出现了Pig这个单词,然后就提议称它为Pig,这个名字一下子就让大家惊住了。这个名字古怪但是容易记也容易读。虽然有些人暗示这个名字听起来有点别扭或者傻,但是因这个名字促使了我们一个非常不错的命名方法,例如把这种语言命名为Pig Latin,把终端交互命名为Grunt,把一个共享资源库性质的分支成为Piggybank.

    Pig编程指南截图