관리 매뉴얼 - Hive 설치

관리 매뉴얼 - Hive 설치 (AdminManual Installation)

Hive를 설치하는 방법을 정리한 관리 매뉴얼이에요. 바이너리 tarball을 풀어서 설치하거나 소스 코드를 빌드해서 설치할 수 있습니다. Hive를 처음 시작하는 분들이 환경 요구사항부터 CLI·Metastore까지 한 번에 익힐 수 있는 가이드입니다.

출처: 문서

본문

Hive 설치 (Installing Hive)

안정 버전의 Hive는 tarball을 내려받아 압축을 푸는 방식으로 설치하거나, 소스 코드를 내려받아 Maven(0.13 이후) 또는 Ant(0.12 이하)로 빌드해 설치할 수 있습니다.

Hive 설치에는 다음 요구사항이 필요합니다:

  • Java 1.7 (권장). 참고: Hive 1.2 버전부터는 Java 1.7 이상이 필요합니다. Hive 0.14 ~ 1.1은 Java 1.6에서 동작하지만 1.7을 권장합니다. 1.8로 조기 전환하는 것을 강력히 권고합니다(HIVE-8607 참고).
  • Hadoop 2.x (권장), 1.x (Hive 2.0.0부터는 지원하지 않음). Hive 0.13 이하 버전은 Hadoop 0.20.x, 0.23.x도 지원했습니다.
  • Hive는 프로덕션의 Linux·Windows 환경에서 주로 쓰입니다. Mac은 흔한 개발 환경이에요. 이 문서의 지침은 Linux와 Mac에 적용되며, Windows에서 사용하려면 조금 다른 단계가 필요합니다.

Tarball로 설치 (Installing from a Tarball)

먼저 Apache 다운로드 미러(Hive Releases 참고)에서 최신 안정 버전의 Hive를 내려받습니다.

다음으로 tarball의 압축을 풉니다. 그러면 hive-x.y.z라는 하위 디렉터리(x.y.z는 릴리스 번호)가 생깁니다:

  $ tar -xzvf hive-x.y.z.tar.gz

환경 변수 HIVE_HOME을 설치 디렉터리를 가리키도록 설정합니다:

  $ cd hive-x.y.z
  $ export HIVE_HOME={{pwd}}

마지막으로 $HIVE_HOME/binPATH에 추가합니다:

  $ export PATH=$HIVE_HOME/bin:$PATH

소스 코드로 설치하기 - Hive 1.2.0 이상 (Hive 1.2.0 and Later)

Apache Maven으로 Hive 1.2.0 이상을 빌드하려면 Getting Started: Building Hive from Source 문서를 참고하세요. Java 1.7 이상이 필요합니다.

소스 코드로 설치하기 - Hive 0.13.0 이상 (Hive 0.13.0 and Later)

Apache Maven으로 Hive 0.13.0 이상을 빌드하려면 Getting Started: Building Hive from Source 문서를 참고하세요.

소스 코드로 설치하기 - Hive 0.12.0 이하 (Hive 0.12.0 and Earlier)

이 절은 Apache Ant로 Hive를 빌드하는 0.12.0 이하 릴리스의 설치 방법을 설명합니다.

Hive 0.12 이하 설치를 위해서는 머신에 Java 1.6과 Ant만 설치되어 있으면 됩니다.

Hive는 SVN(http://svn.apache.org/repos/asf/hive/branches)으로 제공됩니다. 다음 명령으로 내려받을 수 있습니다.

$ svn co http://svn.apache.org/repos/asf/hive/branches/branch-#.# hive

여기서 #.#는 Hive 릴리스 번호입니다. 0.8.1 릴리스는 “branch-0.8-r2”를 사용하면 됩니다.

Hive를 빌드하려면 기본 디렉터리에서 다음 명령을 실행합니다:

$ ant package

그러면 build/dist 하위 디렉터리가 다음 내용으로 생성됩니다:

  • README.txt: readme 파일.
  • bin/: 모든 셸 스크립트를 담은 디렉터리
  • lib/: 필요한 모든 jar 파일을 담은 디렉터리
  • conf/: 구성 파일이 있는 디렉터리
  • examples/: 샘플 입력·쿼리 파일이 있는 디렉터리

build/dist 하위 디렉터리에는 Hive를 실행하는 데 필요한 모든 파일이 들어 있어야 합니다. 그 위치에서 바로 실행하거나, 원한다면 다른 위치로 복사해도 됩니다.

Hive를 실행하려면 PATH에 Hadoop이 있거나 HADOOP_HOME 환경 변수를 Hadoop 설치 디렉터리로 정의해야 합니다.

또한 Hive에서 테이블을 만들기 전에 HDFS 디렉터리 /tmp와 /user/hive/warehouse(일명 hive.metastore.warehouse.dir)를 만들고 chmod g+w로 설정할 것을 강력히 권장합니다.

다음 단계 (Next Steps)

Hive를 설치하면 바로 사용할 수 있지만, 먼저 구성하는 것이 좋습니다.

Hive CLI와 Beeline CLI

Hive 커맨드 라인 인터페이스(CLI)를 사용하려면 Hive 홈 디렉터리로 이동해 다음 명령을 실행합니다:

$ bin/hive

Hive 홈 디렉터리는 Hive 0.12 이하는 build/dist 내용이 있는 곳이고, 0.13 이상은 packaging/target/apache-hive--bin/apache-hive--bin/입니다.

HiveServer2(Hive 0.11에서 도입)에는 Beeline이라는 새 CLI가 있습니다(Beeline – New Command Line Shell 참고). Beeline을 사용하려면 Hive 홈 디렉터리에서 다음 명령을 실행합니다:

$ bin/beeline

Hive Metastore

메타데이터는 임베디드 Derby 데이터베이스에 저장되는데, 디스크 저장 위치는 javax.jdo.option.ConnectionURL이라는 Hive 구성 변수로 정해집니다. 기본적으로 이 위치는 ./metastore_db입니다(conf/hive-default.xml 참고).

임베디드 모드의 Derby를 사용하면 한 번에 최대 한 명의 사용자만 사용할 수 있습니다. Derby를 서버 모드로 실행하려면 Hive Using Derby in Server Mode를 참고하세요.

Derby 외의 데이터베이스를 Hive metastore로 구성하려면 Hive Metastore Administration을 참고하세요.

다음 단계(Next Step): Configuring Hive.

HCatalog와 WebHCat

HCatalog

HCatalog는 Hive 0.11.0 릴리스부터 Hive와 함께 설치됩니다.

바이너리 tarball로 Hive를 설치했다면 hcat 명령이 hcatalog/bin 디렉터리에 있습니다. 단, 대부분의 hcat 명령은 “hcat -g”와 “hcat -p”를 제외하면 hive 명령으로도 실행할 수 있습니다. hcat 명령은 -p 플래그를 권한(permissions)에 사용하지만, hive는 포트 번호 지정에 사용한다는 점에 유의하세요.

HCatalog CLI와 Hive CLI에 대한 문서는 각각 링크에서 확인할 수 있습니다.

WebHCat (Templeton)

WebHCat은 Hive 0.11.0 릴리스부터 Hive와 함께 설치됩니다.

바이너리 tarball로 Hive를 설치했다면 WebHCat 서버 명령 webhcat_server.shhcatalog/sbin 디렉터리에 있습니다.

더 알아보기 (Learn more)

Hive 설치는 바이너리를 푸는 간단한 방법부터 Maven/Ant 빌드까지 여러 방식이 있어요. 설치 후에는 bin/hive(CLI)와 bin/beeline(HiveServer2용 CLI)을 사용하고, 메타데이터는 기본 Derby DB에 저장됩니다. 큰 시스템에서는 Derby 대신 별도 메타데이터베이스를 구성하곤 합니다.