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 

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

你可能感兴趣的:(pig,运行)