Installing Hive(Hadoop 1) + MySQL on CentOS 6.7

Posted at 2016. 1. 5. 22:04 | Posted in Study/Hadoop
반응형

Introduction



Hive 를 공부해보기 MySQL을 메타 스토어로 사용하는 최소한의 설치를 설치해보자..




Requirements


여기서 MySQL 설치에 대해서 다루지 않겠다... 데이터베이스와 유저까지 만들자.


Host: mysqldb

Database: hive

Username: hive


※ MySQL 을 사용 하지 않을 경우를 위해서 생략 가능한 절차를 코맨트 하겠다.


하둡은 이미 설치되어 있어야 한다. 설치된 환경은 아래와 같다.


$ rpm -qa *-release

centos-release-6-7.el6.centos.12.3.x86_64


$ java -version

java version "1.7.0_80"

Java(TM) SE Runtime Environment (build 1.7.0_80-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)


$ whoami

hadoop


$ pwd

/opt/hadoop


$ hadoop version

Hadoop 1.2.1

Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2 -r 1503152

Compiled by mattf on Mon Jul 22 15:23:09 PDT 2013

From source with checksum 6923c86528809c4e7e6f493b6b413a9a

This command was run using /opt/hadoop/hadoop-1.2.1/hadoop-core-1.2.1.jar


하이브가 설치될 환경을 미리 잡아주자.


$ cat ~/.bashrc

# .bashrc

# 생략

# User specific aliases and functions

export HADOOP_HOME=/opt/hadoop/hadoop-1.2.1

export HIVE_HOME=/opt/hadoop/hive-1.2.1

export PATH=$PATH:$HADOOP_HOME/bin:$HIVE_HOME/bin




Download Hive


하이브 최신(1.2.1) 파일을 다운로드 받아 설치하자.


# 파일 다운로드

$ wget http://mirror.apache-kr.org/hive/hive-1.2.1/apache-hive-1.2.1-bin.tar.gz


# 압축 해제

$ tar -xzvf apache-hive-1.2.1-bin.tar.gz


# 이름 변경

$ mv apache-hive-1.2.1-bin hive-1.2.1




Install MySQL Connector/J


※ MySQL 을 사용하지 않을 거라면 패스


하이브에서 메타스토어를 다른 데이터베이스로 사용할 시에 해당 JDBC 라이브러리를 넣어줘야한다.


MySQL을 사용할 것이기 때문에 이에 맞는 라이브러리를 찾아 넣어주자. 


# 파일 다운로드

$ wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.38.tar.gz


# 압축 해제

$ tar -xzvf mysql-connector-java-5.1.38.tar.gz


# jar 파일 복사

$ cp mysql-connector-java-5.1.38/mysql-connector-java-5.1.38-bin.jar /opt/hadoop/hadoop-1.2.1/lib


MySQL 스키마 파일은 하이브에 포함되어 있다. 어떤 방법을 쓰든.... 실행하자.


$HIVE_HOME/scripts/metastore/upgrade/mysql/hive-schema-1.2.0.mysql.sql


나는 mysql client 를 이용해서 넣었다..


$ mysql --host=mysqldb --database=hive --user=hive --password=**** < $HIVE_HOME/scripts/metastore/upgrade/mysql/hive-schema-1.2.0.mysql.sql


Setting


하이브에서 사용하게 될 영역을 HDFS 내에 만들자.


$ $HADOOP_HOME/bin/hadoop fs -mkdir /tmp

$ $HADOOP_HOME/bin/hadoop fs -mkdir /user/hive/warehouse

$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /tmp

$ $HADOOP_HOME/bin/hadoop fs -chmod g+w /user/hive/warehouse


설정 파일을 만들자. (이 파일이 처음에는 없을 것이다)


$ vi $HIVE_HOME/conf/hive-site.xml


<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://hadoop-01:9000</value>
    </property>
    <!-- MySQL 사용 안할 거라면 이 아래는 패스 -->
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://mysqldb:3306/hive</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>hive</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>****</value>
    </property>
</configuration>




이제 하이브를 한번 실행 해보자. 아래와 같이 CLI 커맨드가 나오면 OK!

$ hive

Logging initialized using configuration in jar:file:/opt/hadoop/hive-1.2.1/lib/hive-common-1.2.1.jar!/hive-log4j.properties
hive> _


반응형

'Study > Hadoop' 카테고리의 다른 글

Install Ambari and Deploy HDP in CentOS  (1) 2016.06.05
Installing Hadoop 1 on Ubuntu 14.04  (0) 2015.11.12
//