pig-latin-foreach generate方法就不能工作

7cjasjjr  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(477)

我正面临一个奇怪的问题与Pig生成函数,如果我不使用第一个字段生成的数据似乎是错误的。这是预期的行为吗?

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

在这个示例中,我希望dump b返回数据文件值,而不是文件名

9ceoxa92

9ceoxa921#

在您的示例中,您使用 PigStorage(' ','-tagFile') ,所以每行都是按空间分割的。
然后:
$0->字段1,字段2
1美元->什么都没有,
只是使用 PigStorage(',','-tagFile') .

相关问题