복붙노트

[HADOOP] 돼지 대 COGROUP 대 가입

HADOOP

돼지 대 COGROUP 대 가입

돼지의 JOIN 대신 COGROUP을 사용할 때 어떤 장점이 있습니까 (wrt 성능 / 맵 감소 없음)?

http://developer.yahoo.com/hadoop/tutorial/module6.html에서 제작 한 출력 유형의 차이에 대해 이야기합니다. 그러나 "출력 스키마"를 무시하면 성능에 큰 차이가 있습니까?

해결법

  1. ==============================

    1.주요한 성능 차이는 없습니다. 내가 말한 이유는 모두 동일한 데이터를 감속기에 전달하는 단일 MapReduce 작업이되는 것입니다. 둘 다 외부 키인 키와 함께 모든 레코드를 전달해야합니다. 전혀 그렇지 않으면 COGROUP이 조금 더 빠를 수도 있습니다. 왜냐하면 히트를 가로 질러 데카르트 제품을 수행하지 않고 별도의 가방에 보관하기 때문입니다.

    주요한 성능 차이는 없습니다. 내가 말한 이유는 모두 동일한 데이터를 감속기에 전달하는 단일 MapReduce 작업이되는 것입니다. 둘 다 외부 키인 키와 함께 모든 레코드를 전달해야합니다. 전혀 그렇지 않으면 COGROUP이 조금 더 빠를 수도 있습니다. 왜냐하면 히트를 가로 질러 데카르트 제품을 수행하지 않고 별도의 가방에 보관하기 때문입니다.

    데이터 세트 중 하나가 작 으면 "복제 조인"이라는 조인 옵션을 사용할 수 있습니다. 이렇게하면 두 번째 데이터 집합이 모든 맵 작업에 분산되어 주 메모리에로드됩니다. 이렇게하면 매퍼에서 전체 조인을 수행 할 수 있으며 감속기가 필요하지 않습니다. 내 경험상 조인과 코 그룹의 병목 현상은 전체 데이터 집합을 감속기로 이동하기 때문에 매우 유용합니다. 내 지식으로는 COGROUP으로이 작업을 수행 할 수 없습니다.

  2. from https://stackoverflow.com/questions/7496029/join-vs-cogroup-in-pig by cc-by-sa and MIT license