centos7 기준입니다.
mast02서버에 hive가 실행중이고, tez 빌드가 마무리되었음을 가정합니다.
본 포스팅 기준으로는 tez빌드 파일 역시 mast02서버에 존재합니다.
조언과 충고 감사합니다.
https://developer-woong.tistory.com/44
https://developer-woong.tistory.com/45
1. tez 파일 복사 및 압축 해제
action server: mast02
user: root
pwd: /opt/apps/
cmd:
mkdir tez-0.10.2
cd tez-0.10.2
cp /opt/apps/tez/tez-dist/target/tez-0.10.2.tar.gz /opt/apps/tez-0.10.2
tar xvfz tez-0.10.2.tar.gz
cd ../
chown -R hadoop:hadoop ./tez-0.10.2/
2. tez 환경변수 설정
action server: mast02
user: root
pwd: /opt/apps
cmd:
vi /etc/profile.d/tez.sh
export TEZ_HOME=/opt/apps/tez-0.10.2
export TEZ_CONF_DIR=$TEZ_HOME/conf
source /etc/profile.d/tez.sh
su - hadoop
cd /opt/apps/tez-0.10.2
3. hive, tez 설정파일 수정
action server: mast02
user: hadoop
pwd: /opt/apps/tez-0.10.2
cmd:
vi /opt/apps/hive-3.1.3/conf/hive-env.sh
# export HIVE_AUX_JARS_PATH=/opt/apps/hive-3.1.3/lib 밑에 추가하기
export TEZ_HOME=/opt/apps/tez-0.10.2
export TEZ_JARS=""
for jar in `ls $TEZ_HOME |grep jar`; do
export TEZ_JARS=$TEZ_JARS:$TEZ_HOME/$jar
done
for jar in `ls $TEZ_HOME/lib`; do
export TEZ_JARS=$TEZ_JARS:$TEZ_HOME/lib/$jar
done
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$TEZ_CONF_DIR:$TEZ_JARS
vi /opt/apps/hive-3.1.3/conf/hive-site.xml
# 추가하기
<property>
<name>hive.execution.engine</name>
<value>tez</value>
</property>
<property>
<name>hive.tez.container.size</name>
<value>2560</value>
</property>
<property>
<name>hive.tez.java.opts</name>
<value>-Xmx2048m</value>
</property>
<property>
<name>hive.auto.convert.join.noconditionaltask.size</name>
<value>671088000</value>
</property>
# tez conf 폴더 생성
mkdir /opt/apps/tez-0.10.2/conf/
vi /opt/apps/tez-0.10.2/conf/tez-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>tez.lib.uris</name>
<value>${fs.defaultFS}/user/tez/tez-0.10.2.tar.gz</value>
</property>
<property>
<name>tez.use.cluster.hadoop-libs</name>
<value>true</value>
</property>
<property>
<name>tez.history.logging.service.class</name>
<value>org.apache.tez.dag.history.logging.ats.ATSHistoryLoggingService</value>
</property>
<property>
<name>tez.am.resource.memory.mb</name>
<value>2560</value>
</property>
<property>
<name>tez.am.java.opts</name>
<value>-Xmx2048m</value>
</property>
<property>
<name>tez.session.am.dag.submit.timeout.secs</name>
<value>60</value>
</property>
</configuration>
4. tez config 파일 복사(hive conf) 및 tar 파일업로드 (HDFS)
action server: mast02
user: hadoop
pwd: /opt/apps/tez-0.10.2
cmd:
# tez-site.xml 복사
cp /opt/apps/tez-0.10.2/conf/tez-site.xml /opt/apps/hive-3.1.3/conf/
hdfs dfs -mkdir /user/tez/
hdfs dfs -put /opt/apps/tez-0.10.2/tez-0.10.2.tar.gz /user/tez/
cd /opt/apps/hive-3.1.3
5. hive 재 기동 및 엔진 확인
action server: mast02
user: hadoop
pwd: /opt/apps/hive-3.1.3
cmd:
jps
# RunJar 2개 pid 획득 후
kill -9 [PID]
# hiveserver2 기동
nohup hive --service hiveserver2 >> /data/hive/log/hiveserver2.log 2>&1 &
# hive metastore 기동
nohup hive --service metastore >> /data/hive/log/hive-metastore.log 2>&1 &
6. hive 테이블 insert
action server: mast02
user: hadoop
pwd: /opt/apps/hive-3.1.3
cmd:
# hive 콘솔진입
hive
# 앞전 hive 설치 시 만들어두었던 db, table 사용
show databases;
use test;
# insert
insert into first values ('11111');
# select
select * from first;
결과확인
mast02:38088
'BigData > Hive' 카테고리의 다른 글
hive) MetaException(message:Hive Schema version 3.1.0 does not match metastore's schema version 1.2.0 Metastore is not upgraded or corrupt) 이슈 해결 (0) | 2024.01.17 |
---|---|
Hive) 테이블 컬럼명 변경 (0) | 2023.12.28 |
Hive server, metastore 로그 (0) | 2023.09.07 |
apache tez build error 트러블슈팅 (0) | 2023.07.26 |
apache tez 빌드 (2) | 2023.07.24 |