2013-07-08 4 views
0

하이브 쿼리 실행에 관한 질문이 있습니다. 가정하자하이브에서 쿼리가 어떻게 분산됩니까?

내가 쿼리를 가지고 :

선택 * 테이블의 경우 ID> 5;

이제이 쿼리는 트리로 변환 된 다음 더 작은 작업으로 분할되고 해당 특정 데이터가있는 데이터 노드로 분산됩니다.

이제 쿼리가 배포되면 전체 쿼리가 데이터가있는 모든 노드에 배포됩니까? 또는 쿼리의 일부만 노드에 보냅니 까?

모든 노드에 전체 쿼리를 보내는 경우 데이터 노드는 쿼리의 일부 또는 전체 쿼리 만 처리합니까? (가) 위의 경우라면

후 데이터 노드의 사용이

+0

"쿼리가 배포되는 시점"은 무엇을 의미합니까? – Tariq

+0

나는 쿼리가 작은 작업으로 분할된다는 것을 의미합니까? 데이터가있는 노드 사이에 분산되어 있으면 어떻게됩니까? – DrewRose

답변

0

하이브가 제출하는 쿼리를 기반으로 맵리 듀스 작업 또는 여러 맵리 듀스 작업을 생성 플라스틱 가공 것입니다. 그런 다음 MapReduce 작업은 Hadoop이 MapReduce 작업의 작업을 배포하는 데 사용하는 알고리즘에 따라 Hadoop JobTracker에 의해 배포됩니다.

희망이 도움이됩니다.

+0

'배포 작업 ': 즉, 구성된'스케줄러 ' – javadba

관련 문제