Hadoop 清管器交叉连接和更换

Hadoop 清管器交叉连接和更换,hadoop,mapreduce,apache-pig,Hadoop,Mapreduce,Apache Pig,我有两个文件。包含以下数据的一个文件 Ram,C,Bnglr Shyam,A,Kolkata 另一个文件具有引用 C,Calicut A,Ahmedabad 现在使用pig,我想搜索并替换原始文件中的数据以创建一个新文件,这样我就可以使用这两个文件创建一个新文件 Ram,Class,Bnglr Shyam,Ahmedabad,Kolkata 在猪身上可能吗。我知道如何在MR中实现这一点,但想在pig中尝试。是的。加入文件并选择所需的列,然后写入新文件 A = LOAD 'file1.txt

我有两个文件。包含以下数据的一个文件

Ram,C,Bnglr
Shyam,A,Kolkata
另一个文件具有引用

C,Calicut
A,Ahmedabad
现在使用pig,我想搜索并替换原始文件中的数据以创建一个新文件,这样我就可以使用这两个文件创建一个新文件

Ram,Class,Bnglr
Shyam,Ahmedabad,Kolkata

在猪身上可能吗。我知道如何在MR中实现这一点,但想在pig中尝试。

是的。加入文件并选择所需的列,然后写入新文件

A = LOAD 'file1.txt' AS (a1:chararray,a2:chararray,a3:chararray);
B = LOAD 'file2.txt' AS (b1:chararray,b2:chararray);
C = JOIN A BY a2, B BY b1;
D =  FOREACH C GENERATE A::a1,B::b2,A::a3;
STORE D INTO 'file3.txt'

上述逻辑将起作用,但若在第二个文件中并没有匹配的记录,那个么您将丢失file1中的记录