我正在处理一个序列文件。序列文件中的每个记录都是一个原型。
在PIG中,我使用象皮鸟的SequenceFileLoader和ProtoBuf转换器加载序列文件。
所以,现在我可以看到一个表示protobuf对象的元组。让我们说:
objects: {object: {id: long, name: chararray, nested-object: bytearray}....}.嵌套对象是另一个具有两个属性(prop1、prop2)的原型。
现在,有人能帮我弄清楚如何将嵌套对象的字节数组转换成另一个元组(prop1,prop2) (不确定tuple是否是正确的)吗?
发布于 2013-08-29 19:12:46
不确定这是否是最好的方法,但我通过按照这些使用说明编写一个UDF来解决问题。
我的UDF将使用DataByteArray并返回一个元组。
然后在猪:
nestedObjects = FOREACH objects GENERATE MY_UDF_CONVERTER(nested_object);发布于 2013-08-29 16:40:06
使用我们的数组创建ByteArrayInputStream,然后将其提供给转换器。
https://stackoverflow.com/questions/18516265
复制相似问题