Apache Hive

이 페이지에는 Looker를 Apache Hive에 연결하는 방법에 대한 정보가 포함되어 있습니다.

소개

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

기본적으로 이 서버는 포트 10000에서 수신 대기합니다.

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

Looker는 Tez(hive.execution.engine=tez)에서 Hive로 테스트되었지만 Spark에서 Hive에 대해 Looker를 실행할 수도 있습니다. 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의 쿼리가 특정 큐로 이동하도록 하려면 연결 설정 페이지의 추가 매개변수 필드에 큐 이름 매개변수를 입력합니다.

?tez.queue.name=the_bi_queue

다른 Hive 매개변수는 연결 설정 페이지의 추가 매개변수 필드에서 이러한 방식으로 설정할 수 있습니다.

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

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

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

연결 추가

Looker의 관리 섹션에서 연결을 선택한 후 연결 추가를 클릭합니다.

연결 세부정보를 작성합니다 (자세한 내용은 데이터베이스에 Looker 연결 문서 페이지 참고).

  • 이름: 연결 이름을 지정합니다. 이것이 LookML 프로젝트에서 연결을 참조하는 방법입니다.
  • 언어: 언어를 지정합니다(Apache Hive 2, Apache Hive 2.3 이상 또는 Apache Hive 3.1.2 이상).

    Apache Hive 3.1.2 이상에서는 특히 3.1.2 이상 버전에서만 Apache Hive 3 데이터베이스와 완전히 통합할 수 있습니다. 이는 Looker에서 생성된 SQL의 파싱 시간이 매우 긴 Hive 버전 2.4.0 ~ 3.1.2의 쿼리 파싱 문제 때문입니다.

  • 호스트: 호스트 이름을 지정합니다.

  • 포트: 데이터베이스 포트를 지정합니다.

  • 데이터베이스: 데이터베이스 이름을 지정합니다.

  • 사용자 이름: 데이터베이스 사용자 이름을 지정합니다.

  • Password(비밀번호): 데이터베이스 사용자 비밀번호를 지정합니다.

  • 영구 파생 테이블: 영구 파생 테이블을 사용 설정하려면 이 체크박스를 선택합니다. 이 설정은 임시 데이터베이스 필드와 PDT 재정의 열을 표시합니다.

  • 임시 데이터베이스: 위의 PDT 섹션에서 만든 스크래치 스키마의 이름을 지정합니다.

  • 최대 PDT 빌더 연결: 이 연결에서 가능한 동시 PDT 빌드 수를 지정합니다. 이 값을 너무 높게 설정하면 쿼리 시간에 부정적인 영향을 미칠 수 있습니다. 자세한 내용은 데이터베이스에 Looker 연결 문서 페이지를 참조하세요.

  • 추가 매개변수: 추가 JDBC 문자열 매개변수를 지정합니다.

  • PDT 및 데이터 그룹 유지보수 일정: Looker가 데이터 그룹 및 영구 파생 테이블을 확인해야 하는 시기를 나타내는 cron 표현식을 지정합니다. PDT 및 데이터 그룹 유지보수 일정 문서에서 이 설정에 관해 자세히 알아보세요.

  • SSL: SSL 연결을 사용하려면 선택합니다.

  • SSL 인증서 확인: 호스트 이름 확인을 확인합니다.

  • 최대 연결 수: 이 설정은 처음에 기본값으로 유지할 수 있습니다. 데이터베이스에 Looker 연결 문서 페이지의 최대 연결 수 섹션에서 이 설정에 대해 자세히 알아보세요.

  • 연결 풀 제한 시간: 이 설정은 처음에 기본값으로 유지할 수 있습니다. 데이터베이스에 Looker 연결 문서 페이지의 연결 풀 제한 시간 섹션에서 이 설정에 대해 자세히 알아보세요.

  • SQL Runner Precache: SQL Runner가 테이블 정보를 미리 로드하지 않고 테이블이 선택되었을 때만 테이블 정보를 로드하려면 이 옵션을 선택 해제합니다. 데이터베이스에 Looker 연결 문서 페이지의 SQL Runner Precache 섹션에서 이 설정에 관해 자세히 알아보세요.

  • 데이터베이스 시간대: 데이터베이스에서 사용되는 시간대를 지정합니다. 시간대 변환을 원하지 않으면 이 입력란을 비워 두세요. 자세한 내용은 시간대 설정 사용하기 문서 페이지를 참고하세요.

기능 지원

Looker에서 일부 기능을 지원하려면 데이터베이스 언어도 이 기능을 지원해야 합니다.

최신 버전의 Looker에서 Apache Hive 2는 다음 Looker 기능을 지원합니다.

최신 버전의 Looker에서 Apache Hive 2.3 이상 버전은 다음과 같은 Looker 기능을 지원합니다.

최신 버전의 Looker에서는 Apache Hive 3.1.2 이상이 다음 Looker 기능을 지원합니다.

다음 단계

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