EMR集群迁移自建Hadoop(元数据及HDFS数据)

1.背景

老集群采用的腾讯emr集群,使用过程中磁盘扩容成本费用高且开源组件兼容性存在问题,因此决定采用自建hadoop集群,需要将emr的元数据和hdfs基础数据迁移过来。

EMR版本:3.1.2

自建Hadoop版本:3.1.3

2.集群迁移步骤

2.1 数据迁移

bash 复制代码
nohup hadoop distcp -i -p hdfs://emrhdf存储地址/usr/hive/warehouse/* hdfs://自建hadoop集群地址/usr/hive/warehouse/ >/data/temp.log 2>&1 &
# distcp即dist分布式,cp复制。用于在集群内部及集群之间复制数据。即分布式复制。
# 使用例子:
使用distcp.bytes.per.map控制map数量,mapreduce.job.queuename指定队列,mapreduce.job.name指定job名称
hadoop distcp -Ddistcp.bytes.per.map=1073741824 -Dmapreduce.job.queuename=hive -Dmapreduce.job.name=cpdata hdfs://cloudcluster/apps/hive/warehouse/db/data hdfs://xxxx:8020/user/hive/warehouse/db/data

2.2 元数据迁移

2.2.1 建表语句导出

bash 复制代码
[root@hadoop101 module]# vim exportHive.sh
#!/bin/bash
hive -e "use databashe;show tables" >tables.txt
cat tables.txt | while read eachline
do
hive -e "use databashe;show create table $eachline" >>tablesDDL.txt
echo ";" >> tablesDDL.txt
done

2.2.2 替换不合适的内容

bash 复制代码
Bash
#创建数据库后,tablesDDL.txt文本中,在最上方加上use databashe;
[root@hadoop101 module]# sed -i "s#HDFS85410#mycluster#g" tablesDDL.txt
#方法二:sed -i "s/原字符串/新字符串/g" grep 原字符串 -rl 所在目录
#代码示例:
sed -i "s#xxxx:8020#xxxx#g" 'grep mahuinan -rl ./'

2.2.3 表定义语句复制到另一个集群

bash 复制代码
Bash
scp -P 12898 hadoop@xxx:/data/tablesDDL.txt /data

2.2.4 运行文件

bash 复制代码
SQL
[root@hadoop101 module]# hive -f tablesDDL.txt

2.2.5 修复分区

bash 复制代码
[root@hadoop101 module]# vim msckPartition.sh
#!/bin/bash
hive -e "use databashe;show tables">tables.txt
cat tables.txt |while read eachline
do
hive -e "use databashe;MSCK REPAIR TABLE $eachline"
done
[root@hadoop101 module]# chmod +777 msckPartition.sh
[root@hadoop101 module]# ./msckPartition.sh
相关推荐
GlobalInfo8 小时前
AI与另类数据融合,市场研究正在从“经验驱动”走向“数据智能”
大数据·网络·人工智能·ai
新点一讯8 小时前
聚焦流程数智升级,九科信息企业自动化智能体赋能高效运营
大数据·人工智能
美狐美颜sdk8 小时前
直播APP开发完整流程:需求规划、UI设计、功能开发、美颜SDK接入全解析
大数据·人工智能·音视频·美颜sdk·美颜api
小码哥哥9 小时前
当企业软件开始“越界“:从单一工具到超级集合的架构演进
大数据·人工智能·架构
其美杰布-富贵-李9 小时前
05 多分类任务中的评估指标:Binary Metrics 如何扩展到 Multi-class?
大数据·人工智能·分类
珐恩AI-人工智能9 小时前
生成式引擎优化(GEO)全解:2026年AI检索时代企业长效流量运营方法论
大数据·人工智能·产品运营·流量运营·geo优化
天天爱吃肉82189 小时前
【工程师笔记|新能源整车电控一次过CISPR25/BCI,汽车EMC/EMI落地十大核心设计技巧】
大数据·人工智能·笔记·python·汽车
单词记忆方法研究10 小时前
探索上海背单词小程序品牌:高效学习工具的优化之路
大数据·学习·小程序
2601_9578793310 小时前
没有视频团队的跨境电商,如何利用AI建立短视频内容生产体系?
大数据·人工智能
扶苏100210 小时前
同一个 Git 项目整出两份,切分支互不影响?两种方案实测
大数据·git·elasticsearch