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

Pig - Structure formatting to generate JSON file

我正在处理一些地址数据,需要对其进行格式化以生成 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 ) } )

任何帮助都是 appreciated.Thanks

您的地址栏用一个额外的 Bag 包装,Flattening地址栏将有助于实现预期的输出。
你能试试这个吗?

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

大多数情况下上面的命令会起作用,如果它不起作用,请粘贴您的原始输入数据和您的 pig 脚本。