hadoop生态系统之Pig的部署

pig的一些设计机制

Pig Latin

Pig Latin是pig的脚本语言,由operation 和 transformation 组成。每一个操做或变换都是对输入进行数据处理,而后产生输出结果。这些操做总体上描述了一个数据流的输入输出。
Pig内部,这些变换操做被转换成一系列的MapReduce 做业。与MapReduce同样,Pig是为数据批处理而设计的,操做对象至少是一个整个的文件。同时pig的每次输出位置必须是一个全新的文件夹html

Pig scripts

相似sql的存储过程,pig支持把一系列命令放到一个文件中,使用命令 “pig <你的pig文件以.pig结尾>”运行。Pig scripts能够指定local或者mapreduce的运行方式.能够设置pig的环境变量
Pig scripts经过run命令执行时属于交互模式,有上下文的概念,脚本内能够访问前面定义的alias,脚本的全部命令在Shell执行记录中可见。经过exec命令执行时属于非交互模式。java

UDFs 用户自定义函数

pig可让用户使用自定义函数,函数使用java编写,打包到一个jar文件里。使用 “REGISTER <jar文件>”注册这个jar包,使得咱们可使用其中的函数。
UDFs能够用多种语言来写,如python,ruby。可是运行时实际上是jython jruby之类的,速度慢的离奇不怎么推荐。
ps: LinkedIn贡献了很多好的udf,称为DataFu你能够试一试。
再ps:pig内置函数的文档写的很是好--》http://pig.apache.org/docs/r0.10.0/func.html。python

Pig的部署

选用cloudera的 pig0.11.0-cdh4.3.0
选用理由:依据cloudera的特点,cloudera知名,有实力,商用性强,生态系统组件完善,且各个组件版本对应正确,文档维护好。sql

申请的机器:
192.168.2.21 Pig shell

假设你已经安装好了
配置过程:
Pig的安装是很是的简单的,在Pig安装根目录的conf文件夹里,建立一个pig.properties文件,里边配置一些java的运行时常量,或者修改一些设置。
配置HADOOP_HOME的环境变量指向hadoop的主目录。shell

运行YARN的话你须要设置环境变量apache

export HADOOP_MAPRED_HOME=yarn的目录 设置这个的目的就是为了让 classpath里边载入yarn的jar包。若是你的yarn包与HADOOP_HOME在一个目录这个环境变量是能够不须要设置的。
export PIG_CONF_DIR=pig的配置文件目录ruby

使用HBase的话你还须要设置
export PIG_CLASSPATH=你运行的程序可能须要用到这2个jar包(hbase-0.94.6-cdh4.3.0-security.jar:zookeeper-3.4.5-cdh4.3.0.jar),找到相应位置函数

bin/pig
进入grunt 命令行窗口,在pig命令行窗口你能够很方便的使用hdfs的管理命令。grunt

接下来就是编写你的Pig scripts,跟UDFs 用户自定义函数.oop

相关文章
相关标签/搜索