Apache Pig的例子

用例:使用Pig查找出现次数最多的起始字母。
解:
情况1:将数据加载到名为“ lines”的包中。整行粘贴到字符数组类型的元素行。

grunt> lines= LOAD "/user/Desktop/data.txt" AS (line: chararray);

情况2:袋行中的文本需要标记, 这样每行产生一个单词。
grunt> tokens = FOREACH lines GENERATE flatten(TOKENIZE(line))As token: chararray;

情况3:要保留每个单词的第一个字母, 请输入以下命令。该命令使用子字符串方法获取第一个字符。
grunt> letters = FOREACH tokensGENERATE SUBSTRING(0, 1)as letter : chararray;

情况4:为唯一角色创建一个包, 其中分组的包将在每次出现该字符时都包含相同的字符。
grunt> lettergrp = GROUP letters by letter;

情况5:每组计算发生次数。
grunt> countletter= FOREACHlettergrpGENERATE group, COUNT(letters);

情况6:使用以下命令按计数从高到低的顺序排列输出。
grunt> OrderCnt = ORDER countletterBY$1DESC;

情况7:将结果限制为1。
grunt> result=LIMITOrderCnt1;

【Apache Pig的例子】情况8:将结果存储在HDFS中。结果保存在sonoo文件夹下的输出目录中。
grunt> STOREresultinto 'home/sonoo/output';

    推荐阅读