3

私は次の豚のスクリプトを持っています:
私のファイル 1.txt には A 1
B 2
C 3
D 4があります

grunt> A = load '1.txt' using PigStorage(' ') as (a:chararray,b:int);  
grunt> B = foreach A generate A.a;  
grunt> dump B;

次のエラーが表示されます

エラー org.apache.pig.tools.grunt.Grunt - エラー 2997: バックアップされたエラーから例外を再作成できません: org.apache.pig.backend.executionengine.ExecException: エラー 0: スカラーの出力に複数の行があります。1回目:(A,1)、2回目:(B,2)

4

1 に答える 1

6

aとして参照する必要はありませんA.a。代わりにこれを試してください:

grunt> A = load '1.txt' using PigStorage(' ') as (a:chararray,b:int);  
grunt> B = foreach A generate a;  
grunt> dump B;

C.xバッグから「カラム」を取り出すためのものです。SayCはアイテムのバッグであり、そのバッグ内C.xのすべてのの新しいバッグを作成しますx。それはあなたがここで望んでいることではありません。ここforeachでバッグを繰り返し処理します。

于 2012-06-09T13:18:26.040 に答える