我有一个叫做Ftel的包。 describe Ftel;
会产生以下结果 -
Ftel: {billVal:int, billCount:int}
来自Ftel的转储示例是 -
(20,1)
(5,1)
(5,1)
(10,1)
...
etc.
我使用命令Gtel = group Ftel by billVal;
现在,Dump Gtel;
会抛出以下错误 -
ERROR 1066: Unable to open iterator for alias Gtel
org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1066: Unable to open iterator for alias Gtel
at org.apache.pig.PigServer.openIterator(PigServer.java:765)
at org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:615)
at
org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:303)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:168)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:144)
at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:76)
at org.apache.pig.Main.run(Main.java:455)
at org.apache.pig.Main.main(Main.java:107)
Caused by: java.io.IOException: Job terminated with anomalous status FAILED
at org.apache.pig.PigServer.openIterator(PigServer.java:755)
我不知道造成这个问题的原因。请帮忙。
谢谢!
答案 0 :(得分:0)
它现在有效......我刚从
改变了FtelFtel:{billVal:int,billCount:int}
到
Ftel:{billVal:chararray,billCount:int}
似乎分组只有在组密钥是chararray时才有效。有谁知道为什么??
答案 1 :(得分:0)
作为未来搜索者的一个提示,我遇到了同样的问题,脚本在群集上运行良好。
问题是映射器输出仍在被压缩。在我的脚本中注释掉这些选项修复了它:
SET mapred.compress.map.output 'true';
SET mapred.map.output.compression.codec 'org.apache.hadoop.io.compress.GzipCodec';