我是Pig脚本的新手,在比较两个元组时遇到了问题。
有两个文件:
random
=具有6个数字的序列
allposs
=具有5个数字的序列
我想计算allposs
中所有行,即文件random
中的序列。
可以有两种可能性:
random
序列出现在random
A = load 'random' using PigStorage(':') as (bsid1:int, bsid2:int, bsid3:int, bsid4:int, bsid5:int, bsid6:int);
B = load 'Allposs' using PigStorage(':') as (bsid1:int, bsid2:int, bsid3:int, bsid4:int, bsid5:int);
C = FILTER A BY (A.bsid1==B.bsid1 AND A.bsid2==B.bsid2 AND
A.bsid3==B.bsid3 AND A.bsid4==B.bsid4 AND A.bsid5==B.bsid5) OR
(A.bsid2==B.bsid1 AND A.bsid3==B.bsid2 AND A.bsid4==B.bsid3 AND
A.bsid5==B.bsid4 AND A.bsid6==B.bsid5);
C = GROUP B ALL;
D = FOREACH C GENERATE COUNT(B);<br/>
DUMP D;
请帮我纠正这个Pig脚本。