集群間hive資料表的遷移

2021-09-12 22:29:53 字數 2079 閱讀 8887

方式一:(此方法需要建庫建表)

在原集群hive上檢視遷移表的建表語句及所在庫,然後在新集群hive上建庫建表;

show create table tb_name;

create database db_name;

create table tb_name ..

...

hadoop fs  -get /user/hive/warehouse/dc_ods.db/tb_name /home/zhang.xl/tb_name;
tar -czvf tb_name.tar.gz tb_name

scp -p埠 tb_name.tar.gz 使用者@ip:目標目錄

新集群解壓檔案,資料匯入到新集群檔案系統中;

tar -xf tb_name.tar.gz

hadoop fs -put /home/zhang.xl/tb_name/* /user/hive/warehouse/dc_ods.db/tb_name ;

新集群使用beeline進入hive,修復分割槽表,執行後自動退出hive客戶端;

beeline -u " jdbc:hive2: name pwd"  -e "msck repair table tb_name;"
重新整理impala元資料,執行後自動退出impala客戶端;

impala-shell -i 10.9.xx.xx:21001 -q 'invalidate metadata tb_name'

;

檢查是否遷移成功;

impala-shell -i 10.9.xx.xx:21001 -q 'select count(*) from tb_name'

;

方式二:(此方法需要建庫,不需要建表)

原集群將hive表匯入到臨時hdfs臨時目錄下,多條語句用逗號分隔並換行;

# export_hive.sql

export table dc_ods.tb_name1 to '/zxl/tb_name1'

;export table dc_ods. tb_name2 to '/zxl/tb_name2'

;# 執行命令

beeline -u " jdbc:hive2: name pwd" -f export_hive.sql;

hadoop fs -get /zxl/*  /zxl_local

# 檢視每個表對應的目錄如下

drwxr-xr-x 2 root root 22 mar 19 13:48 data

-rw-r--r-- 1 root root 5127 mar 19 13:48 _metadata

hadoop -put /zxl_local/* /zxl2
4.將檔案匯入新集群hive裡

# importal_hive.sql

import table dc_ods.tb_name1 from '/zxl2/tb_name1'

;import table dc_ods. tb_name2 from '/zxl2/tb_name2'

;

5.檢查hive是否遷移成功;

beeline -u " jdbc:hive2: name pwd"  -e "select count(*) from dc_ods.tb_name1;"
note:若要使用impala查詢該錶需要重新整理元資料

sudo -u hue impala-shell -i 10.9.xx.xx:21001 -q 'invalidate metadata dc_ods. tb_name1'

;sudo -u hue impala-shell -i 10.9.xx.xx:21001 -q 'select count(*) from dc_ods. tb_name1'

;

shylin

hive表集群間的遷移

記錄下工作中由於需要複製生產環境到測試環境以供測試使用做的一次資料庫的遷移,方法比較繁瑣,有待改進 基本思路 將生產環境的表匯出到hdfs,將hdfs的資料get到本地,scp到測試環境的本地,put到測試環境的hdfs,再進行匯入 hive表到處到hdfs export table table n...

集群間 Hive 資料 遷移 問題

1 從hive中匯出資料至本地目錄 insert overwrite local directory export tmp select from test1 where create time 2013 11 25 列資料之間預設以 a隔開。2 將本地資料上傳另乙個集群的hdfs usr loca...

Hive資料在Hadoop集群間的遷移

環境說明 136.64.69.10 e3base02 原集群hive服務端 136.64.69.49 e3base49 目標集群hive服務端 136.64.69.75 e3base55 目標集群hive客戶端 weixh test hive測試庫 原集群匯出資料臨時目錄 hdfs dfs mkdi...