관리 메뉴

Hee'World

[1004jonghee]Hive 메타스토어(MySQL) 구축 본문

BigData/Hive

[1004jonghee]Hive 메타스토어(MySQL) 구축

Jonghee Jeon 2013. 7. 18. 11:41

 MySQL을 메타스토어로 구성하였으며, MySQL이 미리 설치가 되어 있어야 한다.


하이브 서비스의 설정을 세부적으로 수정하고 싶다면 conf디렉터리에 hive-site.xml 파일을 정의해야 한다. 하이브는 기본적으로 conf 디렉터리에 있는 hive-default.xml 파일을 이용해 환경설정을 진행한다. hive-site.xml에 hive-default.xml과 같은 속성이 있다면 hive-default.xml에 있는 속성을 무시하고, hive-site.xml에 정의도니 속성을 사용한다.



 하이브의 중요 환경 설정 속성

속성 

내용 

 hive.metastore.warehouse.dir

 데이터웨어 하우스를 저장하는 기본 디렉터리 입니다. 기본값은 /user/hive/warehouse 이다 

 hive.exec.scratchdir

 하이브 잡이 수행될 때 생성되는 데이터를 저장할 HDFS 디렉터리입니다. 기본 경로는 "tmp/hive-계정명"입니다. 

 hive.metastore.local 

 원격 서버에 설치된 메타스토어 데이터베이스에 접속할 것인지, 로컬에 아파치 더비를 이용할 것인지 설정합니다. 기본값은 true로 설정돼 있어서, 로컬의 아파치 더비를 사용합니다. 여러 사용자가 함께 사용한다면 false로 설정한 후, JDBC 설정 속성을 함께 등록해야 합니다. 

 javax.jdo.option.ConnectionDriverName

 메타스토어 데이터베이스에 접근할 때 사용할 JDBC 드라이버입니다. 기본 드라이버는 org.apache.derby.jdbc.EmbeddedDriver 입니다. 

 javax.jdo.option.ConnectionURL 

 메타스토어 데이터베이스에 접속하기 위한 커넥션 스트링 값 입니다. 기본값은 jdbc:derby::databaseName=metastore_db;create=true 입니다. 

 javax.jdo.option.ConnectionUserName 

 메타스토어용 데이터베이스에 로그인하는 사용자명입니다. 기본 값은 APP입니다. 

 javax.jdo.option.ConnectionPassword 

 JDBC메타스토어용 데이터베이스에 로그인하는 암호이며, 기본 값은 mine으로 설정돼 있습니다. 


-- 출처 "시작하세요! 하둡프로그래밍"--






먼저 conf 디렉터리 안에 있는 hive-site.xml 파일의 내용을 설정하여 줍니다. hive-site.xml 파일이 없을 경우 만들어 주셔야 합니다. 

hive.metastore.local -> false   로컬의 메타스토어를 사용하지 않는 다는 뜻입니다.

javax.jdo.option.ConnectionURL  jdbc:mysq;://192.168.33.136:3306/hive?createDatabaseIfNotExist=true  -> mysql에 접속할때 hive라는 데이터베이스가 없으면 생성된다는 뜻입니다.

 javax.jdo.option.ConnectionDriverName -> mysql jdbc 를 사용합니다.

  javax.jdo.option.ConnectionUserName -> MySQL에 접속할 유저 네임입니다.

 javax.jdo.option.ConnectionPassword -> MySQL에 접속할 패스워드 입니다.




위와 같이 환경설정이 끝났다면  하이브에 접속합니다. 접속한 뒤 jongs라는 테이블을 만들었습니다.



그다음 MySQL이 설치된 곳으로 가서 MySQl에 접속한 뒤 데이터 베이스를 조회합니다. 그러면 hive라는 데이터베이스가 생성되어 있습니다.



hive 데이터베이스의 테이블을 조회 하여 보면 여러 hive의 정보가 담긴 테이블들을 보실 수가 있습니다. 여기서 우리는 hive에서 생성한 테이블을 확인하여 보겠습니다.


여러 테이블 중에 TBLS 라는 테이블을 조회하여 보면 hive에서 생성하였던 jons라는 테이블의 정보를 확인 하실수 있습니다.


Comments