2014-10-15 6 views

답변

6

Apache Pig에서는 FOREACH see Pig Basics에 중첩 된 문을 사용할 수 있습니다. 다음은 문서의 예입니다. AB의 가방입니다.

X = FOREACH B { 
     S = FILTER A BY 'xyz'; 
     GENERATE COUNT (S.$0); 
} 

대신 COUNT 당신은 IsEmpty 함수를 사용할 수 : 운영자

X = FOREACH B { 
     S = FILTER A BY 'xyz'; 
     GENERATE (IsEmpty(S.$0)) ? 'xyz NOT PRESENT' : 'xyz PRESENT') as present, B; 
} 

또는 데이터 만 들어있는 가방 떠나 :

X = FOREACH B { 
     S = FILTER A BY 'xyz'; 
     GENERATE B, S; 
} 
F = FILTER X BY not IsEmpty(S); 
R = FOREACH F GENERATE B; 

이것은 비용이 많이 드는 피할 것 자체에 가입을 여분의 조인은 추가 맵 축소 작업입니다.

관련 문제