java程序员的大数据之路(13):Pig入门
2017-12-11 13:34
351 查看
Pig简介
Pig为大型数据集的处理提供了更高层次的抽象。Pig包括两部分:
用于描述数据流的语言,称为Pig Latin。
用于运行Pig Latin程序的执行环境。当前有两个环境:单JVM中的本地执行环境和Hadoop集群上的分布式执行环境。
Pig的安装
Pig的安装条件
Java环境对于Pig是必需的,如果想要Pig运行在MapReduce模式下,则还需要安装Hadoop。Hadoop的安装方法可以在我之前的文章中获取java程序员的大数据之路(1):Hadoop安装
Pig的安装过程
我用的是pig0.17.0版本,可以在官网下载地址中下载http://www.apache.org/dyn/closer.cgi/pig。下载好后执行解压命令tar -zvxf pig-0.17.0.tar.gz。
解压完之后,配置环境变量,在/etc/profile文件中添加以下代码
export PIG_HOME=/usr/local/pig/pig-0.17.0(替换成自己的目录) export PATH=$PATH:$PIG_HOME/bin:$PIG_HOME/conf
保存退出后,要执行命令
source /etc/profile使环境变量生效。
输入 pig –help查看是否安装成功。
Pig的执行模式
Pig有两种执行模式:本地模式和MapReduce模式。本地模式
在本地模式下,Pig运行单在个JVM中,访问本地文件系统。改模式只用于处理小规模数据集或使用Pig。执行命令pig -x local就能启动Grunt。Grunt是Pig的外壳程序(shell)MapReduce模式
在MapReduce模式下,Pig将查询翻译为MapReduce作业,然后在Hadoop集群上运行。集群可以是伪分布的,也可以是全分布的。要使用MapReduce模式,首先要检查所安装的Pig是否与Hadoop版本兼容。Pig0.17对应于Hadoop2.x,可以通过设置HADOOP_HOME来指定Pig运行的Hadoop。如果不设置,Pig0.17默认运行Hadoop2.7.3。Pig程序的运行
Pig程序有三种方法执行。脚本
Pig可以运行包含Pig命令的脚本文件。对于很短的脚本,也可以使用-e选项直接在命令行中输入脚本字符串Grunt
在Grunt环境中,可以通过run和exec命令运行Pig脚本嵌入式方法
可以在Java中运行Pig程序。类似于使用JDBC运行SQL程序。与数据库比较
Pig Latin和SQL看上去很像,但也有很多不同之处。相较而言,它们之间最大的不同就是Pig Latin是一种数据流编程语言,而SQL是描述型编程语言。RDBMS把数据存储在严格定义了模式的表内,Pig对它所处理的数据要求宽松的多,可以在运行时定义模式。几个支持在线和低延迟查询的特性是RDBMS有但Pig没有的。例如事务和索引。Pig不支持随机读和几十毫秒级的查询。也不支持对一小部分数据的随机写。所有的写都是批量的、流式的写操作。相关文章推荐
- java程序员的大数据之路(8):MapReduce的工作机制
- 菜鸟入门:Java程序员学习之路
- 菜鸟入门:Java程序员学习之路
- java程序员的大数据之路(5):HDFS压缩与解压缩
- java程序员的大数据之路(9):MapReduce的类型
- java程序员的大数据之路(15):Pig Latin用户自定义函数
- 【Java Script 入门之路之数据类型和值】
- java程序员的大数据之路(12):Hadoop的守护进程
- java程序员的大数据之路(10):MapReduce的排序
- 菜鸟入门:Java程序员学习之路
- java程序员的python之路(数据类型)
- java程序员的大数据之路(6):定制的Writable类型
- java程序员的大数据之路(7):基于文件的数据结构
- java程序员的大数据之路(16):Hive简介
- java程序员的大数据之路(11):MapReduce的连接
- java程序员的大数据之路(4):编程调用HDFS
- 转载:java程序员的成长之路
- Spread for Windows Forms快速入门(13)---数据排序
- 针对java/C#程序员的C++(Qt)入门指南[前言]
- Spread for Windows Forms快速入门(13)---数据排序