升级目的:为上层开发,提供统一元数据服务并能通过hive操作kudu表,kylin可以通过hive对在kudu中的数据做分析

面临问题:hive4.0之前hive没有KuduStorageHandler机制,需要hive和kudu整合功能而升级,但是github上官方开源的代码看该模块代码没完成。所以需要自己提供实现或等官方发布,为了满足当下需求,羚羊选择了自己实现

1、备份原元数据
mysqldump -uroot -pxxxxxx metastore > ./metastore.sql
2、解压备好的hive安装包
cd /opt/clouderatar -xvf apache-hive-4.0.0-SNAPSHOT-bin.tar.gz

238710-20200813133655826-1830511748.png 

3、原hive安装目录下创建lib400目录
cd /opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hivemkdir lib400

CDH6.3.2升级Hive到4.0.0_第1张图片

 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相关的服务

CDH6.3.2升级Hive到4.0.0_第2张图片

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/ [email protected]:/opt/cloudera/parcels/CDH-6.3.2-1.cdh6.3.2.p0.1605554/lib/hive/scp -P41121 -r hive [email protected]:/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.sqlsource /data/metastore-backup/mysql/upgrade-2.2.0-to-2.3.0.mysql.sqlsource /data/metastore-backup/mysql/upgrade-2.3.0-to-3.0.0.mysql.sqlsource /data/metastore-backup/mysql/upgrade-3.0.0-to-3.1.0.mysql.sqlsource /data/metastore-backup/mysql/upgrade-3.1.0-to-3.2.0.mysql.sqlsource /data/metastore-backup/mysql/upgrade-3.2.0-to-4.0.0.mysql.sql
7、CM中再启动hive
8、查看hive版本
hive -version

需要源码的朋友可以私信

CDH6.3.2升级Hive到4.0.0
文章转载:http://www.shaoqun.com/a/464632.html