ApachePig—将pig作业的输出存储到从数据派生的目录结构中

wsxa1bj1  于 2021-06-24  发布在  Pig
关注(0)|答案(1)|浏览(511)

我希望实现以下目标:
我的输入数据如下

{"metadata":
{
"producerName":"capture_api",
"producerVersion":"3.0.13"
},
"payload":
{
--some payload 
}
}

我想用一个pig脚本来存储这些数据,如下所示

/finalOutputDir/producerName/producerVersion/File.txt

有什么办法我能做到吗。我尝试过使用multistorage函数,但该类只支持一个字段。我可以覆盖多阶段中的功能,但只是想检查是否有一个更简单的选择。

kdfy810k

kdfy810k1#

piggybank multistorage可以通过一个(只有一个?)字段将数据分离到多个文件夹中。

STORE data INTO '$out/$producerName' USING org.apache.pig.piggybank.storage.MultiStorage('$out/$producerName', '0', 'none', ',');

相关问题