메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


1. hive 다운로드

http://mirror.apache-kr.org/hive/

 

2. banana pi에 업로드(winscp등을 이용) - root로 실행

/usr/local에 업로드한다.

 

3. 압축풀기

  - tar xvfz apache-hive-0.13.1-bin.tar.gz

 

4. 링크 걸기

  - ln -s apache-hive-0.13.1-bin hive

 

5. /etc/profile에 아래의 내용을 추가함

     export HIVE_HOME=/usr/local/hive
     export PATH=$PATH:$HIVE_HOME/bin

 

 # source /etc/profile로 반영함

 

6. conf설정

 - *.template파일을 복사하여 각각의 설정파일을 만들고 내용을 추가한다.

hive-env.sh

hive-exec-log4j.properties

hive-log4j.properties

hive-site.xml

 

7. hive에서 사용할 hdfs에 디렉토리 구성및 권한부여 

hadoop fs -mkdir /tmp
hadoop fs -mkdir /user/hive/warehouse
hadoop fs -chmod g+w /tmp
hadoop fs -chmod g+w /user/hive/warehouse


hadoop fs -chown hadoop:hadoop /user/hive

hadoop fs -chown hadoop:hadoop /user/hive/warehouse

 

8. mysql설치

 root@master:/usr/local# apt-get install mysql-server

(404오류가발생시 https://www.gooper.com/ss/index.php?mid=bigdata&category=2772&document_srl=2995를 참조하여 조치후 설치한다)


9. 사용자 생성

가. mysql> grant all privileges on *.* to 'hive'@'localhost' identified by '패스워드' with grant option;

Query OK, 0 rows affected (0.00 sec)

나. mysql>grant all privileges on *.* to 'hive'@'%' identified by '패스워드' with grant option;


10. db생성

mysql> create database metastore_db;

Query OK, 1 row affected (0.00 sec)

 

11. 테이블 생성 스크립트 실행

root@master:/usr/local/hive/bin# mysql -u root -p패스워드 metastore_db < /usr/local/hive/scripts/metastore/upgrade/mysql/hive-schema-0.13.0.mysql.sql

 

12. 원격접속 가능하도록 설정

mysql> select host from user where user='hive';
+-----------+
| host      |
+-----------+
| localhost |
+-----------+
1 row in set (0.00 sec)

mysql> insert into mysql.user(host,user,password) values('%','metastore',password('패스워드'));
Query OK, 1 row affected, 3 warnings (0.00 sec)

mysql> grant all privileges on *.* to 'hive'@'%';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> select host from user where user='hive';
+-----------+
| host      |
+-----------+
| %         |
| localhost |
+-----------+
2 rows in set (0.00 sec)

13.mysql connector를 다운로드하여 HIVE_HOME/lib에 복사

   (http://www.mysql.com/downloads/connector/j/에서 다운로드하여 압축해제후 mysql-connector-java-5.1.32-bin.jar만 복사)

 

14. HIVE_HOME/conf의 hive-site.xml에 아래를 추가 혹은 변경한다.


<configuration>

<property>

  <name>javax.jdo.option.ConnectionURL</name>

  <value>jdbc:mysql://db_server:3306/hive_metastore_db?createDatabaseIfNotExist=true</value>

  <description>JDBC connect string for a JDBC metastore</description>

</property>


<property>

  <name>javax.jdo.option.ConnectionDriverName</name>

  <value>com.mysql.jdbc.Driver</value>

  <description>Driver class name for a JDBC metastore</description>

</property>

<property>

  <name>javax.jdo.option.ConnectionUserName</name>

  <value>hive</value>

  <description>username to use against metastore database</description>

</property>

<property>

  <name>javax.jdo.option.ConnectionPassword</name>

  <value>패스워드</value>

  <description>password to use against metastore database</description>

</property>

</configuration>

<property>

  <name>hive.metastore.port</name>

  <value>3306</value>

  <description>Hive metastore listener port</description>

  </property>

</configuration>


15. hadoop-env.sh 끝에 아래의 내용을 추가하여 hive관련 lib및 conf를 인식시켜준다.

가. export HADOOP_CLASSPATH에 /usr/local/hive/conf를 추가함

나. 파일끝에 아래를 추가함

for f in ${HIVE_HOME}/lib/*.jar; do
   HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:$f;
done

 

16. hive metastore실행
  hive --service metastore &

  *확인

     root@master:/usr/local/hive/bin# netstat -an | grep 9083
     tcp6       0      0 :::9083                 :::*                    LISTEN    


17. hive server2실행 

   hive server시작(hive가 설치된 master에서 실행)

      : nohup hiveserver2 &


18. beeline실행

hiveserver2에 접근하기 위해서 "bin/beeline -u jdbc:hive2://sda1:10000"을 실행한다.

 

*로그파일 위치(root로 실행할때 default위치) : /tmp/root/hive.log



번호 제목 글쓴이 날짜 조회 수
419 hadoop및 ecosystem에서 사용되는 명령문 정리 총관리자 2014.05.28 3455
418 Hbase Shell 명령 정리 구퍼 2013.04.01 3169
417 sqoop 1.4.4 설치및 테스트 총관리자 2014.04.21 3134
416 의사분산모드에서 presto설치하기 총관리자 2014.03.31 3050
415 "java.net.NoRouteToHostException: 호스트로 갈 루트가 없음" 오류시 확인및 조치할 사항 총관리자 2016.04.01 3001
414 Hive 사용법 및 쿼리 샘플코드 구퍼 2013.03.07 2991
413 JobHistory 서버 기동시 HDFS상에 특정 폴더를 생성할 수 없어서 기동하지 못하는 경우 조치 총관리자 2018.05.29 2898
412 hue.axes_accessattempt테이블의 username컬럼에 NULL 혹은 space가 들어갈수도 있음. 총관리자 2021.11.03 2838
411 이클립스에서 생성한 jar 파일 hadoop 으로 실행하기 file 구퍼 2013.03.06 2836
410 org.apache.hadoop.security.AccessControlException: Permission denied: user=hadoop, access=WRITE, inode="":root:supergroup:rwxr-xr-x 오류 처리방법 총관리자 2014.07.05 2834
409 spark-sql실행시 Caused by: java.lang.NumberFormatException: For input string: "0s" 오류발생시 조치사항 총관리자 2016.06.09 2802
408 banana pi에(lubuntu)에 hadoop설치하고 테스트하기 - 성공 file 총관리자 2014.07.05 2760
407 Hive+mysql 설치 및 환경구축하기 file 구퍼 2013.03.07 2722
406 mysql-server 기동시 Do you already have another mysqld server running on port 오류 발생할때 확인및 조치방법 총관리자 2017.05.14 2668
405 org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 구퍼 2013.03.15 2668
404 HBase 설치하기 – Pseudo-distributed file 구퍼 2013.03.12 2644
403 hadoop 설치(3대) file 구퍼 2013.03.07 2613
402 HBase, BigTable, Cassandra Schema Design file 구퍼 2013.03.15 2506
401 hbase shell에서 컬럼값 검색하기(SingleColumnValueFilter이용) 총관리자 2014.04.25 2446
» banana pi에 hive 0.13.1+mysql(metastore)설치 file 총관리자 2014.09.09 2406

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로