Pig 数据分析引擎(一)

来源:互联网 发布:android 内存回收算法 编辑:程序博客网 时间:2024/06/05 05:55

Pig 数据分析引擎

什么是Pig

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

Pig的体系结构

这里写图片描述

安装和配置Pig

在服务器解压  然后配置环境变量
解压tar -zxvf pig-0.17.0.tar.gz -C ~/training/----->设置环境变量PIG_HOME=/root/training/pig-0.17.0export PIG_HOMEPATH=$PIG_HOME/bin:$PATHexport 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/hadoopexport PIG_CLASSPATH

PIG的常见命令

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

使用PigLatin语句分析数据

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