如何使用序列猪脚本创建CSV文件?

时间:2015-11-18 20:22:00

标签: apache-pig hortonworks-data-platform

我有一个带有列的CSV文件,我将添加一系列数字,然后使用连接链接字段。

Column_A
-----------
claudio
carlo
pierluigi
giovanni

结果:

Column_A    |Column_B
---------------------
claudio     | 1
carlo       | 2
pierluigi   | 3
giovanni    | 4

或者有一种方法可以合并两个包含要加入的字段的两个文件的列?

文件1:

Column_A
-------------
claudio
carlo
pierluigi
giovanni

文件2:

Column_B
-------------
napoli
roma
milano
genova

结果:

Column_A   | Column_B
---------------------
claudio    | napoli
carlo      | roma
pierluigi  | milano
giovanni   | genova

1 个答案:

答案 0 :(得分:1)

有很多方法,你可以使用Apache Pig来做你想做的事。

自0.11版本起,您可以使用RANK运算符。

-- First load your csv file
A1 = LOAD '/path/to/file/file1.csv USING PigStorage(',') AS(name:CHARARRAY);
-- Then RANK
B1 = RANK A1;
-- Look at the results 
DUMP B;
-- First load your csv file
A2 = LOAD '/path/to/file/file2.csv USING PigStorage(',') AS(city:CHARARRAY);
B2 = RANK A2;
--- Then join by id (row number)
C = JOIN B1 BY $0, B2 BY $0;