a.txt文件
col1 col2 col3 col4 col5
A 120 140 160 180
B 200 220 240 260
D 400 420 440 460
b、 文本
col1 col2 col3 col4 col5
A 110 140 160 180
B 200 220 240 260
C 600 620 640 660
输出文件
A 120 140 160 180
A 110 140 160 180
B 200 220 240 260
D 400 420 440 460
C 600 620 640 660
1) col1和col2是这个函数中的主键,任何一个键被改变,我们都会显示两个记录,比如
in A.txt contain 1st Records:- A 120 140 160 180
in B.txt contain 1st Records:- A 110 140 160 180
在这个列中,2发生了变化,所以我必须显示两个记录
2) 如果两个文件上的记录没有变化(我的意思是看起来一样),我们只能显示一个记录
3) 在这两个文件中显示所有其他记录
最终输出应该如下所示
输出文件
A 120 140 160 180
A 110 140 160 180
B 200 220 240 260
D 400 420 440 460
C 600 620 640 660
2条答案
按热度按时间inkz8wg91#
这里是
mapreduce
解决方案:将两个或多个文件放在一个目录中(输入-
arg1
),它会将所有文件与一个符合您所有要求的文件合并。它还匹配col3以结束一个键的非maching行(col1+col2)有关详细信息,请参阅注解。。。pgpifvop2#
使用pig.load加载两个文件,合并记录,然后将其区分开来。