메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

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


1. tarball파일 다운로드

cd /usr/local

wget http://www.eu.apache.org/dist/hive/hive-0.13.1/apache-hive-0.13.1-bin.tar.gz 


2. 압축풀기

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


3. 링크생성

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


4. 변수설정(/etc/profile)

export HIVE_HOME=/hadoop/hive

export PATH=$PATH:$HIVE_HOME/bin


5. HDFS에 hive용 folder생성및 mod수정

hadoop fs -mkdir /user/hive

hadoop fs -mkdir /user/hive/warehouse

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


6. conf파일 설정(conf폴더밑에 템플릿만 있으므로 아래와 같이 만들어줄것)

cp hive-env.sh.template hive-env.sh

cp hive-default.xml.template hive-site.xml

cp hive-exec-log4j.properties.template hive-exec-log4j.properties

cp hive-log4j.properties.template hive-log4j.properties



7. hadoop_env.sh에서 HADOOP_CLASSPATH 환경변수에 hive의 lib파일($HIVE_HOME/lib/* )을 등록

vi $HADOOP_HOME/conf/hadoop_env.sh

export HADOOP_CLASSPATH=/usr/local/hadoop/share/hadoop/mapreduce:/usr/local/hadoop/share/hadoop/mapreduce/lib:$HIVE_HOME/lib/*


* stop-yarn.sh 후 start-yarn.sh해서 반영시켜 줘야함


8. jdbc driver다운로드및 hive의 lib에 upload

https://jdbc.postgresql.org/download.html

(예. postgresql-9.3-1103.jdbc4.jar)


9. hive-site.xml수정

        <property>

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

            <value>jdbc:postgresql://db.com/dbname</value>

        </property>

        <property>

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

            <value>org.postgresql.Driver</value>

        </property>

       <property>

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

         <value>db게정</value>

       </property>

       <property>

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

          <value>패스워드</value>

       </property>


10. hive-env.sh수정

: 아래를 추가하여 hive가 hadoop의 jar파일을 사용할수 있도록 해준다.

#hadoop library classpath setting 

for f in ${HADOOP_HOME}/lib/*.jar; do

  CLASSPATH=${CLASSPATH}:$f;

done


for f in ${HIVE_HOME}/lib/*.jar; do

  CLASSPATH=${CLASSPATH}:$f;

done


11. hadoop-env.sh수정

: 맨끝에 아래의 내용을 추가한다.

export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/local/hadoop/share/hadoop/mapreduce:/usr/local/hadoop/share/hadoop/mapreduce/lib:$HIVE_HOME/lib:$HIVE_HOME/conf


* hadoop-env.sh에 위에 내용을 추가하지 않으면 hive-site.xml이 CLASSPATH에 없다는 오류가 발생하며 meta정보를 rdb에 저장하려 설정했던 부분이 인식되지 않아서 derby db가 생기게 된다.


12. 확인

  가. console에서 hive치고 정상적으로 실행되면 성공

  나. hive cli를 종료후 derby.log와 metadata_db 폴더가 생겨있지 않으면 meta정보가 지정된 rdb에 정상적으로 연동되고 있다고 할수 있다.

번호 제목 글쓴이 날짜 조회 수
27 hive query에서 mapreduce돌리지 않고 select하는 방법 총관리자 2014.05.23 811
26 dual table만들기 총관리자 2014.05.16 826
25 Hive JDBC Connection과 유형별 에러및 필요한 jar파일 총관리자 2021.05.24 836
24 unique한 값 생성 총관리자 2014.04.25 888
23 json으로 존재하는 데이터 parsing하기 총관리자 2019.03.25 974
22 hive에서 insert overwrite directory.. 로 하면 default column구분자는 'SOH'혹은 't'가 됨 총관리자 2014.05.20 999
21 Hive Query Examples from test code (1 of 2) 총관리자 2014.03.26 1050
20 external partition table생성및 data확인 총관리자 2014.04.03 1072
19 hive job실행시 meta정보를 원격의 mysql에 저장하는 경우 설정방법 총관리자 2014.05.28 1088
18 sequence한 번호 생성방법 총관리자 2014.04.25 1123
17 json serde사용법 총관리자 2014.04.17 1140
16 Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D오류발생시 조치사항 총관리자 2016.06.03 1141
15 upsert구현방법(년-월-일 파티션을 기준으로) 및 테스트 script file 총관리자 2018.07.03 1222
14 json 값 다루기 총관리자 2014.04.17 1222
13 schema설정없이 hive를 최초에 실행했을때 발생하는 오류메세지및 처리방법 총관리자 2016.09.25 1226
12 hiverserver2기동시 connection refused가 발생하는 경우 조치방법 총관리자 2014.05.22 1472
11 FAILED: IllegalStateException Variable substitution depth too large: 40 오류발생시 조치사항 총관리자 2014.08.19 1522
10 index생성, 삭제, 활용 총관리자 2014.04.25 1702
9 hive에서 생성된 external table에서 hbase의 table에 값 insert하기 총관리자 2014.04.11 1748
8 java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error: Unable to deserialize reduce input key from...오류해결방법 총관리자 2015.06.16 1760

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.

위로