我正面临着猪生成函数的一个奇怪问题,如果我不使用第一个字段,生成的数据似乎是错误的。这是预期的行为吗?
a = load '/input/temp2.txt' using PigStorage(' ','-tagFile') as (fname:chararray,line:chararray) ;
grunt> b = foreach a generate $1;
grunt> dump b;
(temp2.txt)
(temp2.txt)
grunt> c = foreach a generate $0,$1;
grunt> dump c;
(temp2.txt,field1,field2)
(temp2.txt,field1,field22)
$cat temp2.txt
field1,field2
field1,field22
pig -version
Apache Pig version 0.15.0 (r1682971)
compiled Jun 01 2015, 11:44:35
在示例中,我希望转储b返回数据文件值而不是文件名
答案 0 :(得分:0)
在您的示例中,您使用 package.sub1.Foo
,因此每行都按空格分割。
然后:
$ 0 - > field1,field2
$ 1 - >什么都没有,
只需使用PigStorage(' ','-tagFile')
。