0
内の関数では、私はそれを達成するために、豚でDIFF()メソッドを使用して2つのテーブル(ソースとデスティネーション)との違いを見つけるためにしようとしている、NOT:は豚
sourcenew = LOAD 'hdfs://HADOOPMASTER:54310/DVTTest/Source.txt' USING PigStorage(',') as (ID:chararray,Name:chararray,FirstName:chararray ,LastName:chararray,Vertical_Name:chararray ,Vertical_ID:chararray,Gender:chararray,DOB:chararray,Degree_Percentage:chararray ,Salary:chararray,StateName:chararray);
destnew = LOAD 'hdfs://HADOOPMASTER:54310/DVTTest/Destination.txt' USING PigStorage(',') as (ID:chararray,Name:chararray,FirstName:chararray ,LastName:chararray,Vertical_Name:chararray ,Vertical_ID:chararray,Gender:chararray,DOB:chararray,Degree_Percentage:chararray ,Salary:chararray,StateName:chararray);
cogroupnew= COGROUP sourcenew by ID inner, destnew by ID inner;
diffnew = FOREACH cogroupnew GENERATE DIFF(sourcenew,destnew);
DUMP diffnew;
は間の相違を与えます二つのテーブルまたはタプルが一致した場合、それはこの時まで正常に動作します} {空の袋を返すには、私の次のステップは、その
cogroupextrainsource= COGROUP sourcenew by ID inner, destnew by ID;
filterextrainsource= FILTER cogroupextrainsource BY ID NOT (cogroupnew)
その投げ誤差などのために、先に存在していないソースファイル内の余分なレコードを見つけることです期待される。 追加情報を見つけるにはヘルプが必要です。 ヘルプが大歓迎です。
ありがとうございました!