第一步:打开远程连接
ssh -l niu 192.168.196.134
第二步:启动集群
start-all.sh
第三步:
mr-jobhistory-daemon.sh start historyserver
第四步:进入MapReduce 模式
pig
第五步:
A = LOAD '/usr/lln/input/exe.txt' USING PigStorage('\n') AS (line:chararray);
- 这行代码从文件’/user/lln/input/ex1.txt’中加载数据,并使用PigStorage函数将每一行数据按照换行符(‘\n’)进行分割。
第六步:
B = FOREACH A GENERATE FLATTEN(TOKENIZE(line)) AS word;
- 这行代码对关系A中的每一行数据执行操作。
TOKENIZE(line)
将每一行的line
字段按照空格进行分割,并生成一个包含分割后的单词的数据包。FLATTEN
函数将每个单词从数据包中提取出来,生成一个名为word
的字段
第七步:
C = GROUP B BY word;
- 这行代码根据字段
word
对关系B进行分组。
第八步:
D = FOREACH C GENERATE group AS word, COUNT(B) AS count;
- 这行代码对关系C中的每个分组执行操作。
group
表示当前分组的键值,使用AS word
将其重命名为word
字段。COUNT(B)
计算每个分组中记录的数量,并将结果命名为count
字段。
第九步:
STORE D INTO '/usr/lln/output';
将关系D中的数据存储到指定的输出路径中。
第十步:
DUMP D;
用于在控制台上打印关系D中的数据。