共计 1071 个字符,预计需要花费 3 分钟才能阅读完成。
Pig 代码格式上小注意
1,%default file test.txt 中不要用引号,” 和“”都不行。’file’ 不会被识别
2,等号 = 两边要注意。前必须空,后可以不空。
所以格式最好保持,等号两边都有空格。如 A = load ‘$file’ as (date, web, name, food);
因为编译器确定表名,用空格切分,无空格不行,如 C = cogroup A by $0, B by $1; 执行错误,因为表 C 名字解析不出来,解析成了“C=”,而用 C =cogroup 就可以。Pig 解析中表必须后面有空格,独立出来。
3,关键字大小写不敏感,都能用,但建议保持大写。
变量大小写敏感。尽量简洁,多用_,但不要太长。
4,必须要有 dump 或者是 store 等实际操作数据内容的命令,才能执行 map/reduce,读取表内容。否则,代码只编译。
%default file test.txt
A = load ‘$file’ as (date, web, name, food);
B = load ‘$file’ as (date, web, name, food);
C= cogroup A by $0, B by $1;
describe C;
illustrate C;
dump C;
注意,load 命令写完后,实际不会立刻执行(例如执行 describe A 也只是生成一个数据结构,不会从文件中读入数据),而是等待 illustrate,和 dump 命令后,才会真正读入数据到 A 和 B 中。所以一般报错,也是在执行了 dump 和 illustrate 命令后。
5,jion,两个关系做 jion 把 size 小的放右边。因为从左边一条一条拿,去右边比较。
6,底层的 map 和 reduce 发生,在于数据的操作,parallel 只能制定 map。
Pig 的安装与测试 http://www.linuxidc.com/Linux/2014-07/104039.htm
Pig 安装与配置教程 http://www.linuxidc.com/Linux/2013-04/82785.htm
Pig 安装部署及 MapReduce 模式下测试 http://www.linuxidc.com/Linux/2013-04/82786.htm
Pig 安装及本地模式测试, 体验 http://www.linuxidc.com/Linux/2013-04/82783.htm
Pig 的安装配置与基本使用 http://www.linuxidc.com/Linux/2013-02/79928.htm
Hadoop Pig 进阶语法 http://www.linuxidc.com/Linux/2013-02/79462.htm