使用猪"Encountered: <EOF> after : " " "是什么意思



我是Hadoop和Pig的初学者。我检查了cloudera虚拟图像中证明的例子,并对其进行了建模,以计算前5个常用词:

Lines = LOAD '/user/hue/pig/examples/data/midsummer.txt' as (line:CHARARRAY);
Words = FOREACH Lines GENERATE FLATTEN(TOKENIZE(line)) AS word;
Groups = GROUP Words BY word;
Counts = FOREACH Groups GENERATE group, COUNT(Words);
Results = ORDER Words BY Counts DESC;
Top5 = LIMIT Results 5;
STORE Top5 INTO /user/hue/pig/examples/data/summertop5Hi 

然而,当我运行这个脚本时,我得到了以下消息错误:

ERROR org.apache.pig.tools.grunt.Grunt  - ERROR 1000: Error during parsing. Lexical error at line 8, column 0.  Encountered: <EOF> after : ""

这是什么意思?

您需要修复代码中的三个问题才能使其正常工作
1.STORE stmt没有正确地以semicolon结束
2.STORE stmt输出文件未正确地包含在single quotes
3.Counts and Results stmt逻辑需要稍作修改。

修改的脚本:

Lines = LOAD '/user/hue/pig/examples/data/midsummer.txt' as (line:CHARARRAY);
Words = FOREACH Lines GENERATE FLATTEN(TOKENIZE(line)) AS word;
Groups = GROUP Words BY word;
Counts = FOREACH Groups GENERATE group, COUNT(Words) AS cnt;
Results = ORDER  Counts BY cnt DESC;
Top5 = LIMIT Results 5;
STORE Top5 INTO '/user/hue/pig/examples/data/summertop5';

如果你在剧本中遇到任何问题,请告诉我。

相关内容

最新更新