Hive
1. Hive란?
하둡 에코 시스템 중에서 데이터를 모델링하고 프로세싱 하는 경우, 가장 많이 사용하는 데이터 웨어하우징 용 솔루션
RDB의 데이터베이스, 테이블과 같은 형태로 HDFS에 저장된 데이터의 구조를 정의하는 방법을 제공하며, 이 데이터를 대상으로 SQL과 유사한 HiveSQ 쿼리를 이용하여 데이터를 조회하는 방법 제공
2. Hive 실행 순서
① 사용자가 제출한 SQL문을 드라이버가 컴파일러에 요청하여 메타스토어의 정보를 이용해 처리에 적합한 형태로 컴퍼일
② 컴파일된 SQL을 실행 엔진으로 실행
③ 리소스 매니저가 클러스터의 자원을 적절히 활용하여 실행
④ 실행중 사용하는 원천 데이터는 HDFS등의 저장장치를 이용
⑤ 실행결과를 사용자에게 반환
메타스토어
하이브의 메타정보는 파일의 물리적인 위치와 데이터에 대한 논리적인 정보로 구분.
이 메타정보를 보관하고 사용자의 요청에 따라 정보를 제공하는 곳
1. 메타스토어 타입
(1) 임베디드 메타스토어
- 한번에 한명의 유저만 접근 가능
- 테스트 목적으로 사용
(2) 로컬 메타스토어
- 하이브와 같은 JVM 에서 동작, 메타데이터는 외부의 RDBMS에 저장
- 여러사용자가 동시에 이용 가능
(3) 원격 메타스토어
- 메타스토어가 별도의 JVM에서 동작. 쓰리프트 프로토콜 사용
메타데이터베이스
- 하이브의 테이블에 대한 논리적인 정보는 데이터베이스에 저장. 메타스토어 서비스는 이 데이터베이스 정보를 여러 클라이언트에게 제공
- 데이터베이스는 더비, MS-SQL, MySQL 등 지원
- 이 데이터베이스에 하이브 서비스에 필요한 스키마를 미리 생성하고 서비스
- 하이브 클라이언트를 이용해서 확인하는 정보는 이 데이터베이스 정보에 기반
주요 테이블
1. DBS: 데이터베이스정보
2. TBLS: 테이블정보
3. PARTITIONS 파티션정보
-- DB 정보
SELECT *
FROM DBS;
-- 테이블 정보
SELECT *
FROM TBLS;
'Data Science > Hive' 카테고리의 다른 글
Hive 시작하기 (1) - Hadoop (0) | 2023.08.21 |
---|