Pig - 用于生成JSON文件的结构格式

时间:2015-02-06 21:48:10

标签: json apache-pig

我正在处理一些需要格式化以生成JSON文件的地址数据。我能够将我的数据转换成以下格式

Y: { name: chararray, { ( address: { ( street: chararray,city: chararray,state: chararray,zip: chararray ) } ) } }

我的数据看起来像

( jas, { ( { ( streetname1,city1,state1,zip1 ) } ) } )
( sou, { ( { ( streetname2,city2,state2,zip2 ) } ) } )
( sri, { ( { ( streetname3,city3,state3,zip3 ) } ) } )

但我需要的格式是

Y: { name: chararray, address: { ( street: chararray,city: chararray,state: chararray,zip: chararray ) } }

,数据看起来应该是

(jas, { ( streetname1,city1,state1,zip1 ) } )
(sou, { ( streetname2,city2,state2,zip2 ) } )
(sri, { ( streetname3,city3,state3,zip3 ) } )

任何帮助都将不胜感激。谢谢

1 个答案:

答案 0 :(得分:0)

您的地址栏包含一个额外的行李,Flattening地址栏有助于实现预期的输出。
你能试试吗?

Z = FOREACH Y GENERATE name,FLATTEN($1);
DUMP Z;

以上命令大部分都有效,如果不起作用,请粘贴原始输入数据和猪脚本。