hadoop pig(7)

Pigjava

1. piglinux

pig 能够看作hadoop的客户端软件,能够链接到hadoop集群进行数据分析工做shell

pig方便不熟悉java的用户,使用一种较为简便的相似于SQL的面向数据流的语言pig latin进行数据处理bash

pig latin能够进行排序,过滤,求和,分组,关联等经常使用操做,还能够自定义函数,这是一种面向数据分析处理的轻量级脚本语言函数

pig能够看作是pig latin到map-reduce的映射器grunt

2.安装pigoop

(1)下载并解压pig安装包测试

(2)编辑环境变量操作系统

.bash_profile linux系统的环境变量PATH .net

JAVA_HOME=/usr java安装目录的上级目录

clip_image002

(3)从新登陆使环境变量生效

使用set命令检查环境变量

(4)进入grunt shell

pig -x local 以本地模式运行(链接的并非hadoop集群,仅仅是本地的linux文件系统)

3.pig 的工做模式

本地模式:全部文件和执行过程都在本地,通常用于测试程序

Mapreduce模式:实际工做模式

4.配置pig的map-reduce模式(刘鹏)

(1)设置PATH,增长指向hadoop/bin

(2)设置PIG_CLASSPATH环境变量

PIG_CLASSPATH=/home/grid/hadoop-1.2.1/conf/ 指向hadoop的配置文件,目的是找到hadoop集群

clip_image004

(3)修改hosts文件

clip_image006

(4)启动grunt shell

pig 以map-reduce方式启动(要链接到所指定的hadoop集群,PIG_CLASSPATH指定)

clip_image008

5.pig 的运行方法

(1)脚本

(2)Grunt

自动补全(命令)

autocomplete文件(pig的安装目录,conf目录下,能够把须要补全的单词放入其中,大小写敏感)

Eclipse插件PigPen

除了在grunt 这种shell运行pig命令语言外,还何以在Eclipse底下来运行,(能够在网上查找资料安装运行PigPen插件)

(3)嵌入式

6.grunt shell命令

clip_image010

copyTolocal test1.txt ttt 把hadoop文件系统中文件拷贝到本地文件系统中

ls cd cat

clip_image012

执行操做系统命令 :sh

clip_image014

7.pig数据模型

Bag:表

Tuple:表,记录

Field:属性

Pig不要求同一个bag里面的各个tuple有相同数量或相同类型的field

8.pig latin经常使用语句(权威指南p323)
load: 支出载入数据的方法

Foreach:逐行扫描进行某种处理

Filter:过滤行

dump 把结果显示到屏幕

store 把结果保存到文件

9.UDF

支持使用Java ,Python, Javascript三种语言编写UDF

Java自定义函数较为成熟,其余两种功能还有限

相关文章
相关标签/搜索