Apache Hive

이 페이지에는 Looker를 Apache Hive 2.3 이상 및 Apache Hive 3.1.2 이상에 연결하는 방법에 대한 정보가 있습니다.

다양한 버전의 Apache Hive에 대한 Looker 지원과 관련하여 다음 사항을 유의하세요.

  • Looker는 Apache Hive 2.3 이상 및 Apache Hive 3.1.2 이상에 대한 연결을 지원합니다.
  • Apache Hive 3.1.2 이상의 경우 Looker는 버전 3.1.2 이상에서만 Apache Hive 3 데이터베이스와 완전히 통합할 수 있습니다. 이는 Hive 버전 2.4.0~3.1.2의 쿼리 파싱 문제로 인해 Looker에서 생성한 SQL의 파싱 시간이 매우 길어졌습니다.
  • Looker는 Apache Hive 2에 대한 연결을 지원하지 않습니다. Apache Hive 2에 대한 연결 쿼리에서 오류를 반환합니다.

네트워크 트래픽 암호화

Looker 애플리케이션과 데이터베이스 사이에 네트워크 트래픽을 암호화하는 것이 가장 좋습니다. 안전한 데이터베이스 액세스 사용 설정 문서 페이지에 설명된 옵션 중 하나를 고려해 보세요.

소개

Looker는 JDBC를 사용하여 데이터베이스 서버에 연결하도록 설계되었습니다. Hive의 경우에는 thrift 서버(HiveServer2)입니다. 자세한 내용은 Apache 문서를 참조하세요.

기본적으로 이 서버는 포트 10000에서 리슨합니다.

Looker는 대화형 쿼리 도구이므로 대화형 SQL 엔진에서 작동할 것으로 예상합니다. Hive가 맵리듀스에서 실행 중인 경우(hive.execution.enginemr로 설정된 경우), Hive가 쿼리 결과를 너무 느리게 반환하여 실용적이지 않습니다.

Looker는 Hive on Spark에서 실행할 수도 있지만 Hive on Tez(hive.execution.engine=tez)로 테스트되었습니다. Spark 지원이 Hive 버전 1.1에 추가되었습니다. Looker는 Hive 1.2.1+을 지원합니다.

영구 파생 테이블(PDT)

Hive 연결을 사용하여 Looker에서 영구 파생 테이블(PDT)을 사용 설정하려면 Looker에서 사용할 스크래치 스키마를 만듭니다. 다음은 looker_scratch 스키마를 만드는 데 사용할 수 있는 명령어의 예시입니다.

 CREATE SCHEMA looker_scratch;

Looker가 Hive에 연결하는 데 사용하는 사용자 계정(인증이 사용되지 않으면 익명일 수 있음)은 스크래치 스키마에서 다음 기능이 있어야 합니다.

  • 테이블 만들기
  • 테이블 변경
  • 테이블 삭제

Hive로 PDT를 만들기 전에 JDBC 클라이언트에서 이를 테스트합니다.

Looker의 쿼리가 특정 큐로 이동하도록 하려면 연결 설정 페이지의 추가 JDBC 매개변수 필드에 큐 이름 매개변수를 입력합니다.

?tez.queue.name=the_bi_queue

다른 Hive 매개변수는 연결 설정 페이지의 추가 JDBC 매개변수 필드에 큐 이름 매개변수를 입력합니다.

사용자 속성을 사용하면 다른 사용자 또는 다른 사용자 그룹의 쿼리가 다른 큐로 이동할 수 있습니다. 이렇게 하려면 queue_name와 같은 이름의 사용자 속성을 만든 다음 추가 JDBC 매개변수 필드에 다음을 추가합니다.

?tez.queue.name={{ _user_attributes['queue_name'] }}

이 속성을 사용하여 사용자별 또는 그룹별로 다른 hive-site.xml 매개변수를 맞춤설정할 수도 있습니다.

데이터베이스에 대한 Looker 연결 만들기

다음 단계에 따라 Looker에서 데이터베이스로 이어지는 연결을 만듭니다.

  1. Looker의 관리 섹션에서 연결을 선택한 후 연결 추가를 클릭합니다.
  2. 언어 드롭다운 메뉴에서 Apache Hive 2.3 이상 또는 Apache Hive 3.1.2 이상을 선택합니다.

  3. 연결 세부정보를 작성합니다. 대다수의 설정은 대부분의 데이터베이스 언어에 공통적으로 적용됩니다. 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지를 참조하세요. 다음은 일부 설정에 대한 설명입니다.

    • 이름: 연결 이름을 지정합니다. LookML 프로젝트에서 연결을 참조하는 방법은 다음과 같습니다.
    • 호스트: 호스트 이름을 지정합니다.
    • 포트: 데이터베이스 포트를 지정합니다.
    • 데이터베이스: 데이터베이스 이름을 지정합니다.
    • 사용자 이름: 데이터베이스 사용자 이름을 지정합니다.
    • 비밀번호: 데이터베이스 사용자 비밀번호를 지정합니다.
    • PDT 사용 설정: 이 전환 버튼으로 영구 파생 테이블을 사용 설정합니다. PDT가 사용 설정되면 연결 창에 추가 PDT 설정과 PDT 재정의 섹션이 표시됩니다.
    • 임시 데이터베이스: 이 문서 페이지의 영구 파생 테이블(PDT) 섹션에서 생성된 스크래치 스키마의 이름을 지정합니다.
    • 최대 PDT 빌더 연결 수: 이 연결에 가능한 동시 PDT 빌드 수를 지정합니다. 이 값을 너무 높게 설정하면 쿼리 시간에 부정적인 영향을 줄 수 있습니다. 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지를 참조하세요.
    • 추가 JDBC 매개변수: 추가 JDBC 문자열 매개변수를 지정합니다.
    • 데이터 그룹 및 PDT 유지보수 일정: Looker가 데이터 그룹 및 영구 파생 테이블을 확인해야 하는 시기를 나타내는 cron 표현식을 지정합니다. 데이터 그룹 및 PDT 유지보수 일정 문서.
    • SSL: SSL 연결을 사용하려면 선택합니다.
    • SSL 인증: 호스트 이름을 인증하려면 선택합니다.
    • 노드당 최대 연결 수: 이 설정은 처음에 기본값으로 두어도 됩니다. 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지를 참조하세요.
    • 연결 풀 제한 시간: 이 설정은 처음에는 기본값으로 둘 수 있습니다. 이 설정에 대한 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지의 연결 풀 제한 시간 섹션을 참조하세요.
    • SQL Runner 사전 캐시: 테이블을 선택할 때 SQL Runner가 테이블 정보를 미리 로드하지 않고 테이블 정보만 로드하도록 하려면 이 옵션을 선택 해제합니다. 이 설정에 대한 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지의 SQL Runner 사전 캐시 섹션을 참조하세요.
    • 데이터베이스 시간대: 데이터베이스에 사용되는 시간대를 지정합니다. 시간대 변환을 원하지 않으면 이 필드를 비워 둡니다. 자세한 내용은 시간대 설정 사용 문서 페이지를 참조하세요.
  4. 제대로 연결되었는지 확인하려면 테스트를 클릭합니다. 문제 해결 정보는 데이터베이스 연결 테스트 문서 페이지를 참조하세요.

  5. 이러한 설정을 저장하려면 연결을 클릭합니다.

기능 지원

Looker가 특정 기능을 지원하려면 데이터베이스 언어도 해당 기능을 지원해야 합니다.

Apache Hive 2.3 이상

Apache Hive 2.3 이상에서는 Looker 24.18부터 다음 기능을 지원합니다.

기능 지원 여부
지원 수준
통합
Looker(Google Cloud 핵심 서비스)
아니요
대칭 집계
아니요
파생 테이블
영구 SQL 파생 테이블
영구 기본 파생 테이블
안정적인 뷰
쿼리 종료
SQL 기반 피벗
아니요
시간대
SSL
소계
JDBC 추가 파라미터
대소문자 구분
위치 유형
목록 유형
백분위수
고유 백분위수
아니요
SQL Runner 표시 프로세스
아니요
SQL Runner 설명 테이블
SQL Runner 표시 색인
SQL Runner 선택 10
SQL Runner 카운트
SQL 설명
OAuth 사용자 인증 정보
아니요
컨텍스트 주석
연결 풀링
아니요
HLL 스케치
아니요
집계 인식
증분 PDT
아니요
밀리초
마이크로초
구체화된 뷰
아니요
대략적인 고유값
아니요

Apache Hive 3.1.2 이상

Apache Hive 3.1.2 이상에서는 Looker 24.18부터 다음 기능을 지원합니다.

기능 지원 여부
지원 수준
지원됨
Looker(Google Cloud 핵심 서비스)
대칭 집계
아니요
파생 테이블
영구 SQL 파생 테이블
영구 기본 파생 테이블
안정적인 뷰
쿼리 종료
SQL 기반 피벗
아니요
시간대
SSL
소계
JDBC 추가 파라미터
대소문자 구분
위치 유형
목록 유형
백분위수
고유 백분위수
아니요
SQL Runner 표시 프로세스
아니요
SQL Runner 설명 테이블
SQL Runner 표시 색인
아니요
SQL Runner 선택 10
SQL Runner 카운트
SQL 설명
OAuth 사용자 인증 정보
아니요
컨텍스트 주석
연결 풀링
아니요
HLL 스케치
아니요
집계 인식
증분 PDT
아니요
밀리초
마이크로초
구체화된 뷰
아니요
대략적인 고유값
아니요

다음 단계

데이터베이스를 Looker에 연결한 후 사용자의 로그인 옵션을 구성합니다.