【FusionInsight 迁移】HBase从C50迁移到6.5.1(01)迁移概述

【FusionInsight 迁移】HBase从C50迁移到6.5.1(01)迁移概述

HBase从C50迁移到6.5.1(01)迁移概述

项目上最近全新部署了FusionInsight HD 6.5.1大数据集群,并且希望将老集群FusinInsight HD C50的所有业务都迁移到新集群上。由于在老集群C50上的HDFS、HBase中存在有大量的业务数据,因此将业务从C50迁移到6.5.1的过程中,就需要将C50上的业务数据同步迁移到新集群6.5.1上。

迁移范围

  • 迁移方向
    • 从老集群FusinInsight HD C50迁移数据到新集群FusionInsight HD 6.5.1。
  • 迁移场景
    • 生产实施,HDFS、HBase数据迁移。
  • 迁移方式
    • 离线迁移
  • 影响范围
    • 离线数据迁移,需要完成所有存量数据的迁移,迁移完成后做数据验证及业务切换。

迁移前的准备

在做数据迁移前需要做一些必要的准备工作。

使用admin用户登录到需要迁移数据的老集群FusinInsight C50的Manager。

登录成功后进入到Manager的主界面。

HDFS文件检查

在HDFS服务的status界面查看是否有missing block。

如果存在missing block,则需要登录集群客户端,执行命令:

shell 复制代码
hdfs fsck /

查看并分析具体的原因。

确认HBase迁移目录

迁移前还需要确认需要迁移的具体目录,可以通过HDFS Web UI进行查看。

以及:

各个目录的说明如下:

路径 说明
/hbase/.tmp 当对表做创建或者删除操作的时候,会将表move到该tmp目录下,然后再去做处理操作。
/hbase/WALs 被HLog实例管理的WAL文件。 对于每个HregionServer,日志目录中都包含一个对应的子目录 在每个子目录下有多个HLog文件(因为日志滚动)。
/hbase/archive 存储表的归档和快照,HBase在做Split或者compact操作完成之后,会将HFile移到archive目录中,然后将之前的HFile删除掉,该目录由HMaster上的一个定时任务定期去清理。存储表的归档和快照具体目录:/hbase/archive/data/default/表名/region名/列族名/fd2221d8d1ae4e579c21882f0ec4c5a5
/hbase/corrupt 损坏的日志文件,一般为空。
/hbase/data HBase存储数据的核心目录。
/hbase/data/default 该目录存储所有用户数据表/hbase/data/default/表名。
/hbase/data/hbase 该目录存储了存储了HBase的namespace、meta和acl三个系统级表。 - /hbase/data/hbase/namespace namespace中存储了HBase中的所有namespace信息,包括预置的hbase和default。 - /hbase/data/hbase/meta meta表存储了所有Region信息的列表 - /hbase/data/hbase/acl acl则是表的用户权限控制
/hbase/hbase.id 集群的唯一ID。
/hbase/hbase.version 集群的文件格式版本信息。
/hbase/oldWALs 当/hbase/WALs中的HLog文件被持久化到存储文件中,不再需要日志文件时,它们会被移动到/hbase/oldWALs目录。

由于迁移过程只需要迁移HBase的数据,因此只需要迁移/hbase/data目录即可。

确保数据落盘

在数据迁移前,需要确保老集群FusinInsight HD C50上的HBase的所有表的数据已全部落入磁盘。

可以通过客户端,进入hbase shell客户端,对HBase的所有表都进行flush操作:

shell 复制代码
flush tablename

或者通过hdfs命令检查/hbase/WALs目录为空,或者大小为0:

shell 复制代码
hdfs dfs -du -h /hbase

停止老集群HBase服务

在迁移过程中,为了保证数据的完整性、一致性,防止因增量数据的产生而导致HDFS目录结构的变化,需要确保老集群FusinInsight HD C50上的HBase服务处于停止状态,因此,迁移时间点应该选在无业务数据产生的时间段。

停止新集群HBase服务

因为数据迁移会覆盖新集群FusinInsight HD 6.5.1上的HBase的数据,因此需要确保新集群的HBase的所有数据可删除、可覆盖,并且同样需要停止HBase服务。

使用admin用户登录到新集群FusinInsight HD 6.5.1的Manager,并在HBase服务界面,点击停止按钮停止HBase服务。

HBase服务停止后,点击完成按钮。

如果新集群中的HBase已经有数据,或者数据比较重要,也可以备份一下原有数据。

shell 复制代码
hdfs dfs -cp /hbase /hbase_bak
hdfs dfs -ls /hbase

备份完成后的文件如下:

至此,迁移前的准备工作就完成了,接下来就可以实施迁移工作。

相关推荐
WeeJot嵌入式29 分钟前
大数据治理:确保数据的可持续性和价值
大数据
zmd-zk1 小时前
kafka+zookeeper的搭建
大数据·分布式·zookeeper·中间件·kafka
激流丶1 小时前
【Kafka 实战】如何解决Kafka Topic数量过多带来的性能问题?
java·大数据·kafka·topic
测试界的酸菜鱼2 小时前
Python 大数据展示屏实例
大数据·开发语言·python
时差9532 小时前
【面试题】Hive 查询:如何查找用户连续三天登录的记录
大数据·数据库·hive·sql·面试·database
Mephisto.java2 小时前
【大数据学习 | kafka高级部分】kafka中的选举机制
大数据·学习·kafka
Mephisto.java2 小时前
【大数据学习 | kafka高级部分】kafka的优化参数整理
大数据·sql·oracle·kafka·json·database
道可云2 小时前
道可云人工智能&元宇宙每日资讯|2024国际虚拟现实创新大会将在青岛举办
大数据·人工智能·3d·机器人·ar·vr
成都古河云2 小时前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
软工菜鸡2 小时前
预训练语言模型BERT——PaddleNLP中的预训练模型
大数据·人工智能·深度学习·算法·语言模型·自然语言处理·bert