0

データをロードしてタプルを作成しています:

data = LOAD 'file' USING PigStorage(';') AS (f1: chararray, f2: chararray);
t = FOREACH data GENERATE TOTUPLE(f1, f1) as t;

後でタプルの名前を変更したいので、

t: (f3: chararray, f4: chararray)

可能性はありますか?

4

1 に答える 1

1

基本的なものと同じように、複雑なデータ型のスキーマを提供できます。

grunt> data = LOAD 'file' USING PigStorage(';') AS (f1: chararray, f2: chararray);
grunt> t = FOREACH data GENERATE TOTUPLE(f1, f1) as t;
grunt> DESCRIBE t;
t: {t: (f1: chararray,f1: chararray)}
grunt> t = FOREACH t GENERATE t AS t:tuple(f3:chararray, f4:chararray);
grunt> DESCRIBE t;
t: {t: (f3: chararray,f4: chararray)}

tuple必要に応じて、キーワードを省略できます。

grunt> t = FOREACH t GENERATE t AS t:(f5:chararray, f6:chararray);
grunt> DESCRIBE t;
t: {t: (f5: chararray,f6: chararray)}
于 2013-11-04T17:26:18.870 に答える