Classic 환경에서 이용 가능합니다.
이 가이드에서는 Object Storage 버킷에 데이터를 저장한 후 Hue와 Beeline을 통해 간단한 Hive 쿼리를 실행하는 방법을 설명합니다.
아키텍처 예시
계속 보관해야 하는 데이터는 Object Storage 버킷에 저장하고, Cloud Hadoop 클러스터는 필요할 때만 사용합니다.
Hive 쿼리 실행 시 다음 단계로 쿼리가 실행됩니다.
- Hive 클라이언트에서 Cloud Hadoop 클러스터에 있는 Hive 서버로 쿼리 제출
- 서버는 쿼리를 처리하고, 마스터 서버에 설치된 Hive 메타데이터 DB(MySQL)에 메타데이터를 요청
- 서버는 Object Storage의 버킷 안에 저장된 데이터를 로드
- Hive 서버는 클라이언트로 결과를 반환
Hive 테이블 생성
예시) 네이버 클라우드 플랫폼 Object Storage 버킷에 샘플 데이터 파일을 업로드한 후 Hive에서 이 데이터를 사용할 수 있도록 Hive External Table을 생성
Object Storage 버킷에 있는 데이터를 사용하기 위해서는 hive-site.xml
에 다음과 같은 구성이 필요합니다.
Hive 테이블 생성을 생성하는 방법은 다음과 같습니다.
-
샘플 데이터를 다운로드해 압축을 해제한 후
AllstarFull.csv
파일을 Object Storage 버킷에 업로드해 주십시오.- Hive에서 데이터 파일의 location을 폴더 단위로 읽기 때문에, 폴더 하나에 데이터 하나를 저장해 주십시오.(권장)
참고제공되는 샘플 데이터는 Lahman's Baseball Database 2012 버전의 일부로, 데이터의 모든 저작권은 Sean Lahman에게 있습니다.
-
Ambari Hive View2.0 또는 Hue Hive 편집기에서 아래 구문으로 Hive External Table을 생성해 주십시오.
location
: 데이터 셋 파일이 저장된 bucket path를 지정
Hive 쿼리 실행
Cloud Hadoop에서 제공하는 여러 도구를 사용해서 Hive 쿼리를 실행할 수 있습니다. 이 가이드에서는 다음 <Hive 쿼리 실행 툴 예> 로 Hive 쿼리를 실행하는 방법을 설명합니다.
- Hive 쿼리 실행 툴 예
- Hue의 Hive Interpreter
- Hive Clients 중 SQLLine CLI에 기반한 Beeline
Hue의 Hive 인터프리터
Hue의 Hive 인터프리터를 이용하여 Hive 쿼리를 실행하는 방법은 다음과 같습니다.
-
Hue에 로그인한 후 Hive 인터프리터에서 HiveQL 쿼리를 실행해 주십시오.
-
결과 화면을 통해 S3에 업로드한 파일이 Hive 테이블과 연결되었는지 확인해 주십시오.
Beeline
Beeline을 이용하여 Hive 쿼리를 실행하는 방법은 다음과 같습니다.
-
Hive Clients가 설치된 호스트에 직접 접속한 후 다음 명령어로 Beeline 세션을 시작해 주십시오.
참고호스트 접속 방법은 SSH로 클러스터 노드 접속를 참조해 주십시오.
-
Beeline 프롬프트가 표시되면 HiveQL 쿼리를 실행해 주십시오.
- 아래 쿼리는 결과를 출력하지 않고, Object Storage에 저장합니다.
참고쿼리를 저장하기 전에 Object Storage 버킷에 지정한 위치(디렉터리)가 존재하는지 확인해 주십시오.
-
다음 명령어를 실행하여 결과가 정상적으로 저장되었는지 확인해 주십시오.
결과는 다음과 같습니다.