nettman 发表于 2013-11-30 22:02:07

什么是pig

本帖最后由 nettman 于 2013-11-30 22:03 编辑

1.1 编写目的
介绍pig,一个不得不说的hadoop的扩展。
1.2 什么是pig
Pig是一个基于Hadoop的大规模数据分析平台,它提供的SQL-LIKE语言叫Pig Latin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。Pig为复杂的海量数据并行计算提供了一个简单的操作和编程接口。
1.3 pig的特点
      1、专注于于大量数据集分析(ad-hoc analysis , ad-hoc 代表:a solution that has been custom designed for a specific problem );
      2、运行在集群的计算架构上,Yahoo Pig 提供了多层抽象,简化并行计算让普通用户使用;这些抽象完成自动把用户请求queries翻译成有效的并行评估计划,然后在物理集群上执行这些计划;
   3、提供类似 SQL 的操作语法;
   4、开放源代码;
1.4 pig的主要用户
1、yahoo
2、twitter
1.5 关于pig和hive对于开发人员,直接使用Java APIs可能是乏味或容易出错的,同时也限制了Java程序员在Hadoop上编程的运用灵活性。于是Hadoop提供了两个解决方案,使得Hadoop编程变得更加容易。
•Pig是一种编程语言,它简化了Hadoop常见的工作任务。Pig可加载数据、表达转换数据以及存储最终结果。Pig内置的操作使得半结构化数据变得有意义(如日志文件)。同时Pig可扩展使用Java中添加的自定义数据类型并支持数据转换。
•Hive在Hadoop中扮演数据仓库的角色。Hive添加数据的结构在HDFS(hive superimposes structure on data in HDFS),并允许使用类似于SQL语法进行数据查询。与Pig一样,Hive的核心功能是可扩展的。
Pig和Hive总是令人困惑的。Hive更适合于数据仓库的任务,Hive主要用于静态的结构以及需要经常分析的工作。Hive与SQL相似促使 其成为Hadoop与其他BI工具结合的理想交集。Pig赋予开发人员在大数据集领域更多的灵活性,并允许开发简洁的脚本用于转换数据流以便嵌入到较大的应用程序。Pig相比Hive相对轻量,它主要的优势是相比于直接使用Hadoop Java APIs可大幅削减代码量。正因为如此,Pig仍然是吸引大量的软件开发人员。

第2章 安装pig2.1 下载pig下载pig的最新版本:
http://www.apache.org/dyn/closer.cgi/pig
我下载的是pig-0.10.0.tar.gz
2.2 安装pig解压缩
tar zxvf pig-0.10.0.tar.gz
进入目录
cd pig-0.10.0
注意,pig是hadoop的工具,所以不需要修改原hadoop的配置。
将pig加入到环境变量中:
输入
cd ~
进入到用户主目录
vi .bashrc
最下边加入环境变量的配置
保存然后执行
. .bashrc
输入 pig -help进行测试,如果设置成功,则出现如下界面


如果想获取pig的源码,可以使用svn下载
http://svn.apache.org/repos/asf/pig/trunk


ansha886 发表于 2016-6-22 14:26:00

谢谢分享!!!
页: [1]
查看完整版本: 什么是pig