2017-03-27 3 views
0

Hadoop과 같은 분산 시스템에서 하이브 쿼리를 실행하는 방법을 알아야합니다. 나는 다른 질문을 체크했으나 아무도 자세히 설명하지 않았다.hadoop에서 하이브 쿼리를 실행하는 방법

전체 실행 프로세스를 찾고 있습니다. 하이브 조인 쿼리가 단순한 select 쿼리보다 많은 시간을 사용하는 이유를 알고 싶습니다.

하이브 실행 프로세스를 알고있는 사람이면 누구나 설명하십시오.

추신 : 저는 Hadoop 프레임 워크로 hortonworks 데이터 플랫폼을 사용하고 있습니다.

+0

누구든지 하이브 쿼리 프로세스에 대한 훌륭한 문서를 제공 할 수 있다면 매우 도움이 될 것입니다. – techprat

답변

0

사용자가 제출 한 SQL 쿼리는 하이브에 의해 최적화되어 Tez 작업으로 변환 된 후 Hadoop 클러스터에서 실행되는 실제 운영자 트리로 변환됩니다. Hadoop의 분산 SQL 쿼리 처리는 중간 결과 집합을 처리 할 때 기존의 관계형 쿼리 엔진과 다릅니다. 하이브 쿼리 처리에는 종종 중간 결과 집합을 정렬하고 다시 어셈블해야합니다. 이것은 하둡 (Hadoop) 용어로 셔플 링 (shuffling)이라고합니다.

하이브의 기존 쿼리 최적화의 대부분은 셔플 비용을 최소화하는 것과 관련이 있습니다. 현재 사용자는 쿼리를 효율적으로 실행하기 위해 올바른 조인 순서로 하이브에 최적화 된 쿼리를 제출해야합니다. Hive의 논리적 최적화는 필터 푸시 다운, 프로젝션 가지 치기 및 파티션 가지 치기로 제한됩니다. 비용 기반 논리적 최적화는 Apache Hive의 쿼리 대기 시간과 사용 편의성을 크게 향상시킬 수 있습니다.

조인 및 재정렬 조인 조인은 비용 기반 최적화 프로그램의 이점을 누릴 수있는 최적화 중 일부입니다. 비용 기반 옵티마이 저는 쿼리 힌트와 구성 옵션을 사용하여 사용자가 조인을 올바른 순서로 다시 정렬하거나 조인 알고리즘을 지정하지 않아도 될 수 있습니다. 따라서 잠재적으로 쿼리 최적화에 대해 걱정할 필요없이 비즈니스 프로세스에 가까운보고 및 ETL 요구를 모델링 할 수 있습니다.

wiki을 읽으십시오. 코드에 대한 특정 질문이있는 경우 시도한 내용과 달성하고자하는 내용을 게시하십시오.

관련 문제