Hive新老集群数据迁移方案

(1)确保能运行hive -e ""

(2)在旧集群,生成导出脚本 —— vi hive_export.sh

#!/bin/bash
if [ "X$1" == "X" ];
then
echo "请带入需要备份的库名集合,比如:aa bb cc"
exit
fi
# 指定导出脚本生成位置
export='/tmp/export.hql'
# 指定数据在hdfs的存储目录
catalogue='/tmp/export_db_tmp'
# 创建目录
hdfs dfs -mkdir -p $catalogue
# 删除脚本,保证可重复执行
rm -r -f /tmp/export.hql

# 循环各个库,生成导出脚本
while [ "$#" -ge "1" ];do
hive -e "use $1; show tables;" | grep -v " " | awk -vdatabases="$1" -vcatalogue="$catalogue" '{printf "export table %s to |%s|;\n",databases"."$1,catalogue"/"databases"/"$1}' | sed "s/|/'/g" | grep -v tab_name >> $export
shift
done

(3)在旧集群,执行导出脚本

sh hive_export.sh ...

h
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值