Pig 数据分析引擎(一)

Pig 数据分析引擎

什么是Pig

Pig 是一个用来处理大规模数据集的平台,由 Yahoo!贡献给 Apache
Pig  可以简化 MapReduce  任务的开发
Pig 可以看做hadoop的客户端软件,可以连接到 hadoop 集群进行数据分析工作
Pig 方便不熟悉 java 的用户,使用一种较为简便的类似于 SQL 的面向数据流的语言
pig Latin 进行数据处理
Pig Latin 可以迕行排序、过滤、求和、分组、关联等常用操作,还可以自定义函数,是一种面向数据分析处理的轻量级脚本语言
Pig 可以看做是 PigLatin 到MapReduce的映射器
Pig 可以自动对集群进行分配和回收,并自动的对MapReduce程序进行优化

Pig的体系结构

Pig 数据分析引擎(一)_第1张图片

安装和配置Pig

在服务器解压  然后配置环境变量
解压
tar -zxvf pig-0.17.0.tar.gz -C ~/training/
----->
设置环境变量
PIG_HOME=/root/training/pig-0.17.0
export PIG_HOME

PATH=$PIG_HOME/bin:$PATH
export PATH
使环境变量生效
source ~/.bash_profile

Pig的工作模式

1.本地模式:操作的是linux系统上的文件
启动命令
[root@linux111 tools]# pig -x local

日志信息
org.apache.pig.backend.hadoop.executionengine.HExecutionEngine - Connecting to hadoop file system at: file:///
2.集群模式:连接到hadoop进行操作
  配置:设置一个环境变量  PIG_CLASSPATH 指向Hadoop配置文件所在的目录
PIG_CLASSPATH=/root/training/hadoop-2.7.3/etc/hadoop
export PIG_CLASSPATH

PIG的常见命令

ls、cd、cat、mkdir、pwd
copyFromLocal、copyToLocal
sh
register、define

1、效率比直接执行HDFS的命令高
2、sh命令:在Pig的集群模式下,执行操作系统的命令
3、Pig的自定义函数的命令:  register(注册jar包), define(创建别名)

使用PigLatin语句分析数据

1、启动HistoryServer
2、常用的PigLatin语句
    (*) load: 加载数据到表中(bag)
    (*) foreach:对表中的每一条数据tuple进行处理
    (*) filter: 相当于where
    (*) group by 
    (*) join : 连接(多表查询)
    (*) generate: 提取列
    (*) union/intersect:集合运算
    (*) 输出   dump    直接打印在屏幕
              store   输出到HDFS

你可能感兴趣的:(大数据学习之旅)