엔지니어 블로그

[HIVE] Hive Metastore란? 본문

HIVE

[HIVE] Hive Metastore란?

안기용 2024. 4. 22. 18:32

Hive Metastore

  • hive는 table,partition과 관련된 정보를 메타스토어 저장소에 저장한다. 데이터를 조회할 때 저장소의 데이터를 기반으로 빠르게 조회가 가능하다.
  • 관계형 DB와 달리 insert 이후 스키마를 적용하게 되는데, 스키마 정보 또한 metastore에서 가져오게 된다.
  • metastore는 메타데이터를 저장하는 저장소의 개념이 아닌, 요청에 알맞는 metadata를 찾을 수 있도록 서버와 저장소 사이에서 중개하는 역할을 한다.

1.유형

  • metastore는 총 3가지 유형이 있고, 각각 임베디드,로컬,원격 metastore라고 한다.

1.Embedded Metastore

hive metastore의 기본 설정값이다. hive가 설치된 로컬 머신에 metastore가 데이터를 파일로 저장한다.
이때 저장소는 derby를 사용하고, 파일 단위로 저장되기 때문에 한번에 한개의 process만 접근이 가능하다.

2.Local Metastore

hive와 동일한 JVM에서 작동하고, metadata는 외부의 저장소에 저장한다.

3.Remote Metastore

hive와 독립된 JVM에서 작동한다. 가장 큰 특징으로는 thrift 프로토콜 기반의 metastore 서버를 중간에 둔다는 점이다.
hive는 메타데이터 저장소와 직접 통신하지 않고 metastore 서버가 중개 역할을 하여 metadata를 주고 받는다.