본문 바로가기

Data Engineering/Hive

[Hive] Hive 서비스

하이브(Hive) 서비스

  • CLI ( Command Line Interface) : 하이브 셸에 대한 명령행 인터페이스
  • Hiveserver : Thrift, JDBC, ODBC 연결자를 사용하는 응용 프로그램은 하이브와 통신하기 위하여 하이브 서버를 필요
  • Metastore : 하이브 실행 시 메타 데이터가 저장되는 장소 (MySQL 등)
  • HWI : 하이브 웹 인터페이스

Hive 서비스 아키텍처

하이브(Hive) 메타스토어 설정

하이브 vs 데이터베이스

테이블 스키마 검증 시점

전통적인 데이터베이스

  • 데이터를 적재하는 시점에 검증
  • 만일 insert 중인 데이터가 스키마에 부합되지 않으면 데이터 거부
  • 컬럼 단위로 색인이 가능하기 때문에 빠른 쿼리 성능을 제공

하이브

  • 쿼리 실행 시 데이터 검증
  • 데이터의 매우 빠른 적재를 제공
  • 동일 데이터를 두 스키마로 다루어야 할 때 훌륭한 유연성을 제공
  • 하이브는 갱신을 지원하지 않음
  • 락 매커니즘 : 주키퍼를 사용하여 테이블과 파티션 수준의 락을 지원

HQL (Hive Query Language)

하이브 테이블 생성

CREATE [EXTERNAL] TABLE page_view(viewTime INT, userid BIGINT,
                                  ip STRING COMMENT 'IP Address of the User')
PARTITIONED BY(dt STRING, country STRING)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE:

쿼리

 

'Data Engineering > Hive' 카테고리의 다른 글

[Hive] 공공데이터 활용하기  (0) 2024.03.11
[Hive] Hive 실습  (0) 2024.03.08
[Hive] Hive 설치하기  (0) 2024.03.08