CDH6.3.2升級Hive到4.0.0


升級目的:為上層開發,提供統一元數據服務並能通過hive操作kudu表,kylin可以通過hive對在kudu中的數據做分析

面臨問題:hive4.0之前hive沒有KuduStorageHandler機制,需要hive和kudu整合功能而升級,但是github上官方開源的代碼看該模塊代碼沒完成。所以需要自己提供實現或等官方發布,為了滿足當下需求,羚羊選擇了自己實現

1、備份原元數據
mysqldump -uroot  -pxxxxxx metastore > ./metastore.sql
2、解壓備好的hive安裝包
cd /opt/cloudera
tar -xvf apache-hive-4.0.0-SNAPSHOT-bin.tar.gz

 

3、原hive安裝目錄下創建lib400目錄
cd /opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive
mkdir lib400

 4、拷貝hive新版本lib到lib400目錄下(只替換hive開頭的jar包,其他jar包不要替換,其中hive-exec-2.1.1-cdh6.3.2.jar不要換)
cp -r /opt/cloudera/apache-hive-4.0.0-SNAPSHOT-bin/lib/* /opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive/lib400
5、CM中停掉hive,及hive相關的服務

6、 修改hive啟動文件,調用lib400的jar包
vim /opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive/bin/hive
/HIVE_LIB

同步lib和hive腳本文件到所有節點 

scp -P41121 -r lib400/ hadoop@10.111.15.164:/opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive/
scp -P41121 -r hive hadoop@10.111.15.164:/opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive/bin
7、各節點創建軟鏈接
ln -s /opt/cloudera/parcels/CDH/lib/hive/lib400/jline-2.14.6.jar /opt/cloudera/parcels/CDH/lib/hadoop-yarn/lib/jline-2.12.jar

  升級元數據庫 metastore到hive4.0.0

source /data/metastore-backup/mysql/upgrade-2.1.0-to-2.2.0.mysql.sql
source /data/metastore-backup/mysql/upgrade-2.2.0-to-2.3.0.mysql.sql
source /data/metastore-backup/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql
source /data/metastore-backup/mysql/upgrade-3.0.0-to-3.1.0.mysql.sql
source /data/metastore-backup/mysql/upgrade-3.1.0-to-3.2.0.mysql.sql
source /data/metastore-backup/mysql/upgrade-3.2.0-to-4.0.0.mysql.sql
7、CM中再啟動hive
8、查看hive版本
hive -version

需要源碼的朋友可以私信


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM