“遇到:< eof>在:”“之后”是什么意思

72qzrwbm  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(661)

我是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 : ""

这是什么意思?

i34xakig

i34xakig1#

您需要修复代码中的三个问题才能使其正常工作。
1 STORE stmt 未正确结束 semicolon .
2 STORE stmt 输出文件未正确包含在 single quotes .
三。需要稍微修改一下 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';

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

相关问题