Pig运行

Pig是作为客户端运行的程序,你需要将其连接到本地Hadoop或者集群上。当安装Pig之后,有三种执行pig程序的方法:pig脚本 (将程序写入.pig文件中),Grunt(运行Pig命令的交互式shell环境)和嵌入式方式。  
records = Load ‘sample.txt’ as (year:chararray, temperature:int, quality:int);  
filter_records = FILTER records BY temperature != 9999 AND quality == 0;  
group_records = GROUP filter_records BY year;  
max_temp = FOREACH group_records GENERATE group, MAX(filter_records.temperature);  
DUMP max_temp;  
生成上面程序的创建的数据集结构: grunt> ILLUSTRATE max_temp;  
Pig和数据库的比较:  
1)Pig是数据流编程语言,而SQL是一种描述型编程语言。Pig是相对于输入的一步步操作,其中每一步都是对数据的一个简单的变换; 而SQL语句是一个约束的集合,这些约束结合在一起定义了输出。Pig更像RDBMS中的查询规划器。  
2)RDBMS把数据存储在严格定义了模式的表内,但pig对数据的要求更宽松,可以在运行时定义模式,而且是可选的。  
3)pig对复杂、嵌套数据结构的支持更强;  
4)Pig不支持事务和索引,也不支持随机读和几十毫秒级别的查询,它是针对数据批量处理的。  
5)Hive是介于Pig和RDBMS之间的系统。Hive以HDFS为存储,但是查询语言是基于SQL的,而且Hive要求所有数据必须存储在表中, 
   表必须有模式,而模式由Hive管理。但Hive允许为预先存在HDFS中的数据关联一个模式,因此数据加载步骤是可选的。

更多精彩内容请关注:http://bbs.superwu.cn

关注超人学院微信二维码:

时间: 2024-08-25 05:40:18

Pig运行的相关文章

Pig安装及简单使用(pig版本0.13.0,Hadoop版本2.5.0)

原文地址:http://www.linuxidc.com/Linux/2014-03/99055.htm 我们用MapReduce进行数据分析.当业务比较复杂的时候,使用MapReduce将会是一个很复杂的事情,比如你需要对数据进行很多预处理或转换,以便能够适应MapReduce的处理模式,另一方面,编写MapReduce程序,发布及运行作业都将是一个比较耗时的事情. Pig的出现很好的弥补了这一不足.Pig能够让你专心于数据及业务本身,而不是纠结于数据的格式转换以及MapReduce程序的编写

Apache Pig的前世今生

最近,散仙用了几周的Pig来处理分析我们网站搜索的日志数据,感觉用起来很不错,今天就写篇笔记介绍下Pig的由来,除了搞大数据的人,可能很少有人知道Pig是干啥的,包括一些是搞编程的,但不是搞大数据的,还包括一些既不是搞编程的,也不是搞大数据的,而是从事其他行业的朋友,所以很有可能望文生义,一看标题,就乐了,心里就开始默默的翻译了===> Apache 猪的笔记,看起来Apache的猪,比较厉害啊,都能写笔记了.  开个玩笑,下面进入正题,散仙,尽量写的通俗易懂,让大家看了之后都能够理解这头Pig

Hadoop Pig简介、安装、试用

相比Java的MapReduce api,Pig为大型数据集的处理提供了更高层次的抽象,与MapReduce相比,Pig提供了更丰富的数据结构,一般都是多值和嵌套的数据结构.Pig还提供了一套更强大的数据变换操作,包括在MapReduce中被忽视的连接Join操作. Hadoop版本:2.2.0  Pig版本:0.12.1 Pig介绍 Pig包括两部分: 用于描述数据流的语言,称为Pig Latin. 用于执行Pig Latin程序的执行环境,当前有两个环境:单JVM中的本地执行环境和Hadoo

Hadoop第8周练习—Pig部署及统计访问日志例子

1    运行环境说明... 3 1.1     硬软件环境... 3 1.2     机器网络环境... 3 2    书面作业0:搭建Pig环境... 3 2.1     Pig介绍... 3 2.2     部署过程... 4 2.2.1   下载Pig. 4 2.2.2   上传Pig. 4 2.2.3   解压缩... 5 2.2.4   设置环境变量... 6 2.2.5   验证安装完成... 6 3    书面作业1:计算每个IP点击次数... 7 3.1     书面作业1内容

pig基础知识总结

Pig Latin UDF语句 REGISTER   在Pig运行时环境中注册一个JAR文件 DEFINE      为UDF.流式脚本或命令规范新建别名 Pig Latin命令类型 kill    中止某个MapReduce任务 exec 在一个新的Grunt shell程序中以批处理模式运行一个脚本 run   在当前Grunt外壳程序中运行程序 quit  退出解释器 set   设置Pig选项   模式(Schema) Pig的一个关系可以有一个关联的模式,模式为关系的字段指定名称和类型

Pig系统分析(7)-Pig有用工具类

Explain Explain是Pig提供的调试工具,使用explain能够输出Pig Lation的运行计划. 值得一提的是,explain支持-dot选项,将运行计划以DOT格式输出, (DOT是一种图形描写叙述语言,请參考http://zh.wikipedia.org/zh/DOT%E8%AF%AD%E8%A8%80) 代码实现详见org.apache.pig.impl.plan.DotPlanDumper,这部分实现为我们设计运行计划可视化提供了參考. 下图部分截取了使用Graphviz

The First Pig Task

                     The First Pig Program 环境: Hadoop-1.1.2 pig-0.11.1 linux系统为CentOS6.4 jdk1.6 在伪分布式下模式下运行 启动:pig 或 pig –x mapreduce 启动后会看到这样的界面就表示启动成功了 我们来运行一个例子 输入数据student.txt如下 201000101:ZhangLong:Man:20:Computer 201000102:WangLi:Women:19:Softwa

如何给Apache Pig自定义UDF函数?

近日由于工作所需,需要使用到Pig来分析线上的搜索日志数据,散仙本打算使用hive来分析的,但由于种种原因,没有用成,而Pig(pig0.12-cdh)散仙一直没有接触过,所以只能临阵磨枪了,花了两天时间,大致看完了pig官网的文档,在看文档期间,也是边实战边学习,这样以来,对pig的学习,会更加容易,当然本篇不是介绍如何快速学好一门框架或语言的文章,正如标题所示,散仙打算介绍下如何在Pig中,使用用户自定义的UDF函数,关于学习经验,散仙会在后面的文章里介绍. 一旦你学会了UDF的使用,就意味

pig使用

可以作为一个随身参考 1.更简单的挖掘大规模数据集而发明. 可使用用户定义语言UDF进行修改 运行pig脚本 pig script.pig grunt自动补全机制 tab键 创建autocomplete文件,常用单词或文件路径 quit退出2.示例 计算年度最高气温 --表示注释 1)records = LOAD '外部文件' as      --制表符分割(year:chararray,temperatrue:int,quality:int); 2)filtered_records = fil