Pig脚本根据某些标准进行转换

时间:2017-05-18 01:58:48

标签: apache-pig

我有一个包含以下格式数据的文件:

abc 123 456  
cde 45 32  
efg 322 654  
abc 445 856  
cde 65 21  
efg 147 384  
abc 815 078  
efg 843 286  

等等。 如何使用pig将其转换为以下格式:

abc 123 456 cde 45 32 efg 322 654  
abc 445 856 cde 65 21 efg 147 348  
abc 815 078           efg 843 286  

另外,如果在abc之后缺少cde,它应该插入空格,因为它是一个固定宽度的文件。

我尝试过分组,但它对我不起作用。

1 个答案:

答案 0 :(得分:0)

好吧,你可以通过编写自定义加载器来实现。最简单的尝试是扩展PigStorage并覆盖getNext()方法,使其调用记录阅读器三次,而不是1并生成联合元组。