본문 바로가기
빅데이터/hive

[hive] 하이브 schemaTool을 이용하여 스키마 생성

by hs_seo 2019. 10. 30.

hive metastore


원격 하이브 메타스토어를 이용하기 위해서는 RDB에 하이브 메타스토어 스키마를 설정해야 합니다. hive-site.xml에 RDB에 접속을 위한 정보를 입력하고, 커맨드를 입력하여 스키마를 생성할 수 있습니다.

hive-site.xml 설정

원격 데이터베이스에 접속하기 위한 접속정보를 설정합니다. 

<?xml version="1.0"?>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://database_ip:database_port/database_name</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>org.mariadb.jdbc.Driver</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>user_name</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>password</value>
  </property>
</configuration>

스키마 생성

스키마 생성 방법은 다음과 같습니다. dbType에 사용하는 데이터베이스를 입력하면 됩니다. mssql, mysql, oracle, postgres를 지원합니다.

$ hive --service schemaTool -dbType mysql -initSchema

스키마 업그레이드

하이브 버전을 바꾸게 되면 하위버전의 스키마를 상위버전으로 업그레이드 해야 하는 경우가 생깁니다. 이럴때는 다음과 같이 사용합니다.

$ hive --service schemaTool -dbType mysql -upgradeSchema

스키마 정보 확인

하이브 스키마의 정보를 확인하는 방법은 다음과 같습니다.

$ hive --service schemaTool -dbType mysql -info
Metastore connection URL:      jdbc:mysql://database_ip:database_port/database_name
Metastore Connection Driver :  org.mariadb.jdbc.Driver
Metastore connection User:     user_name
Hive distribution version:     2.3.0
Metastore schema version:      2.3.0
schemaTool completed
반응형