Hive元數(shù)據(jù)庫遷移過程記錄

遷移起因:

? ? ? ?基于Hadoop的離線處理平臺上線一段時間,發(fā)現(xiàn)hiveserver2非常不穩(wěn)定,平時分析人員都是使用hue通過beeswax的方式連接到hiveserver2,可是一旦session到期,未做操作,hue的hive編輯器就會出現(xiàn)卡死的現(xiàn)象,排查了各種原因,調(diào)整了各種hiveserver2 session參數(shù),如:

? ? ? ?但效果不明顯。依然會出現(xiàn)卡死現(xiàn)象,也調(diào)整了hiveserver2的內(nèi)存到16G。依然會出現(xiàn)session異常問題,每次重啟hiveserver2后才能用。困惑了幾天,Hive也開啟DEBUG模式觀察了幾天日志。調(diào)整各種參數(shù)依然無效,從日志的觀察中發(fā)現(xiàn)了metastore鏈接mysql時候會出現(xiàn)超時的情況,只有回過頭從當(dāng)時部署時著手。

? ? ? ?注意到其中的元數(shù)據(jù)庫部署在虛機上,用的是政務(wù)云的機器,不免產(chǎn)生懷疑,是不是元數(shù)據(jù)庫所在虛機的網(wǎng)絡(luò)問題導(dǎo)致的。監(jiān)控虛機網(wǎng)絡(luò),確實發(fā)現(xiàn)網(wǎng)絡(luò)延時確實比較大。從杜絕隱患的考慮,決定將hive元數(shù)據(jù)庫遷移到物理機,為了進一步升級,同時采用hiveserver HA和增加metastore的數(shù)量,達到負載均衡。

遷移過程

1. 新建數(shù)據(jù)庫

在新的物理機上安裝相關(guān)數(shù)據(jù)庫,推薦使用mysql,這里使用的是采用mysql的一個發(fā)型版本percona server(mysql 5.6.24)

2. 初始化配置

在新建的數(shù)據(jù)庫上新建數(shù)據(jù)庫和建立相關(guān)用戶

3. 停止Hive服務(wù)準備遷移hive元數(shù)據(jù)庫

采用的是HDP的版本,集群利用Ambari進行管理,可以直接進行服務(wù)的起停

4. 導(dǎo)出數(shù)據(jù)庫

在原來數(shù)據(jù)庫中hive元數(shù)據(jù)存放的庫為hive,利用mysql命令將其導(dǎo)出為一個sql文件,命名為db_hive.sql

5. 導(dǎo)入數(shù)據(jù)庫

將導(dǎo)出的文件傳到要新遷移的服務(wù)器上,并將其導(dǎo)入到新的數(shù)據(jù)庫

6. 修改hive配置

將新的數(shù)據(jù)庫信息填入Hive配置文件,注意端口

注:更改了端口請在配置文件中寫明。

7. 啟動hive 服務(wù)

更新同步配置文件,并啟動hive服務(wù)

8. 測試是否可用

利用beeline連接hiveserver2確定是否遷移完成

注意這里鏈接的時候由于做了hiveserver2 ha所以采用的jdbc的連接方式:

遷移效果

由于增加了hiveserver2和metastore的數(shù)量,遷移完成后觀察日志可以看到多個hiveserver2實例和多個metastore實例都已經(jīng)生效

看來確實是歪打正著,目前觀察了幾天,一切運行正常,暫時未出現(xiàn)之前遇到的hiveserver2卡死現(xiàn)象了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容