사용자가 제출 한 SQL 쿼리는 하이브에 의해 최적화되어 Tez 작업으로 변환 된 후 Hadoop 클러스터에서 실행되는 실제 운영자 트리로 변환됩니다. Hadoop의 분산 SQL 쿼리 처리는 중간 결과 집합을 처리 할 때 기존의 관계형 쿼리 엔진과 다릅니다. 하이브 쿼리 처리에는 종종 중간 결과 집합을 정렬하고 다시 어셈블해야합니다. 이것은 하둡 (Hadoop) 용어로 셔플 링 (shuffling)이라고합니다.
하이브의 기존 쿼리 최적화의 대부분은 셔플 비용을 최소화하는 것과 관련이 있습니다. 현재 사용자는 쿼리를 효율적으로 실행하기 위해 올바른 조인 순서로 하이브에 최적화 된 쿼리를 제출해야합니다. Hive의 논리적 최적화는 필터 푸시 다운, 프로젝션 가지 치기 및 파티션 가지 치기로 제한됩니다. 비용 기반 논리적 최적화는 Apache Hive의 쿼리 대기 시간과 사용 편의성을 크게 향상시킬 수 있습니다.
조인 및 재정렬 조인 조인은 비용 기반 최적화 프로그램의 이점을 누릴 수있는 최적화 중 일부입니다. 비용 기반 옵티마이 저는 쿼리 힌트와 구성 옵션을 사용하여 사용자가 조인을 올바른 순서로 다시 정렬하거나 조인 알고리즘을 지정하지 않아도 될 수 있습니다. 따라서 잠재적으로 쿼리 최적화에 대해 걱정할 필요없이 비즈니스 프로세스에 가까운보고 및 ETL 요구를 모델링 할 수 있습니다.
wiki을 읽으십시오. 코드에 대한 특정 질문이있는 경우 시도한 내용과 달성하고자하는 내용을 게시하십시오.
누구든지 하이브 쿼리 프로세스에 대한 훌륭한 문서를 제공 할 수 있다면 매우 도움이 될 것입니다. – techprat