关于pig网上没有一个能上手的。自己研究了一下。欢迎喜欢云计算的粉丝纠正:
Pig是一种数据流处置言语,你能够把它理解为编程言语,可是我更倾向于理解为脚本言语,由于它真的十分简略,十分便利,十分简略上手。没有杂乱语法的牵绊,只需简略的学习三五分钟,就足能够上手艺作了。真的!下面就一起花三五分钟学习一下吧!
装置篇
1. 先从官网下载pig,我运用的版本是pig-0.11.1.tar.gz,放到linux的/usr/local目录下;
2. 履行指令 tar -zxvf pig-0.11.1.tar.gz,然后重命名为pig;
3. 在文件/etc/profile中设置环境变量PIG_HOME,并把bin目录添加到环境变量PATH中;下图是我的配置文件内容
以上两行内容别离指的是hadoop装备的HDFS称号和MapReduce称号。其间,HDFS的称号来自于hadoop的装备文件core-site.xml,MapReduce的称号来自于hadoop的装备文件mapred-site.xml。
4. 装置完毕了,即是这么简略!
运用篇
咱们运用pig做个数据计算的比如,只需要两三分钟即可,假定咱们的HDFS中有个成果文件,内容如下
这是一切pig脚本运转的第一步,意图即是能够让pig以自个的方法处置该文件。
§ 对每一行的分数加100。指令中的FOREACH…GENERATE…表明迭代每一行,能够跟表达式score+100。
的确成果都增加了100分。
§ 过滤成果超越120分的记载。指令中的FILTER…BY…表明过滤每一行。
与前面的输出比较,少了一条记载。
§ 对记载进行分组。指令中的GROUP…BY…表明分组
的确依照名字把三条记载分为了两组。
§ 对不同分组中的分数进行汇总,咱们又用到了FOREACH…GENERATE…要害词
看看,汇总了吧!
§ 把成果保管到HDFS中,指令的意思是把方才的汇总成果保管到HDFS的/grade_sum文件中。
看一下,咱们能够直接在pig指令行中履行HDFS指令,这即是保管后的结果。好了,咱们的示例做完了,我们从中看到pig的便利、易用了吗?在我看来,语法简略,要害词少,真的是太简便了!
对于pig的使用,或许因为不熟悉,给他蒙上一层面纱,就如同。对于自己熟悉的语言则不当回事。其实pig如同php, 相对于Java,.net,pig就如同javascript.
对于上面感觉不是很懂可以继续查看下面帖子: