文档首页/ MapReduce服务 MRS/ 最佳实践/ 数据迁移/ 使用CDM服务迁移Hadoop数据至MRS集群
更新时间:2025-08-14 GMT+08:00
分享

使用CDM服务迁移Hadoop数据至MRS集群

应用场景

云数据迁移(Cloud Data Migration,简称CDM),是一种高效、易用的批量数据迁移服务。 CDM围绕大数据迁移上云和智能数据湖解决方案,提供了简单易用的迁移能力和多种数据源到数据湖的集成能力,降低了客户数据源迁移和集成的复杂性,有效地提高您数据迁移和集成的效率。

本章节适用于将线下IDC机房或者公有云Hadoop集群中的数据(支持数据量在几十TB级别或以下的数据量级)迁移到华为云MRS服务。

方案架构

图1 Hadoop数据迁移方案

CDM支持全量迁移和增量迁移文件,全量迁移通过文件复制完成,将策略配置为“跳过重复文件”可实现增量文件迁移。

  • 全量迁移
    • 在CDM上新建两个连接,连接源集群的HDFS和华为云MRS的HDFS或OBS文件系统。
    • 创建CDM全量迁移作业,配置源端和目的端的参数,并启动作业。
  • 增量迁移
    • 再次在CDM中建立迁移作业,在配置目标端的参数时,选择重复文件的处理方式为“跳过重复文件”。
    • 启动迁移作业。

使用CDM服务迁移Hadoop数据至MRS集群流程如下:

图2 迁移流程

方案优势

  • 简单易用:免编程,向导式任务开发界面,通过简单配置几分钟即可完成迁移任务开发。
  • 迁移效率高: 基于分布式计算框架进行数据任务执行和数据传输优化,并针对特定数据源写入做了专项优化,迁移效率高。
  • 实时监控:迁移过程中可以执行自动实时监控、告警和通知操作。

对系统影响

  • 在迁移过程中,源端HDFS文件的更改未能及时同步到目标集群,可能导致数据不一致。

    可以使用校验工具识别不一致数据,进行重迁或者补数。

  • 迁移操作可能导致源端集群性能下降,影响源端业务的响应时间。建议在业务空闲时进行数据迁移,并在源端集群上合理配置资源,包括计算、存储和网络,确保其能承受迁移负载。

迁移调研

迁移HDFS数据前需要对源端HDFS组件进行调研,以便评估产品兼容性、迁移过程中可能会产生的风险、对系统的影响等,具体请参考表1

表1 迁移调研

序号

调研项目

调研问题

1

版本兼容性

HDFS集群版本。

2

总容量

用户需要存储的总容量(会乘以副本数作为磁盘总容量的规划)。

3

总数据量

HDFS处理的总数据量。

4

文件数

存储到HDFS上的文件总数量。

5

副本数

副本数,系统默认是3,如果用户有特殊需求,可以变更副本数。

6

小文件占比

大小文件的大致分布概率(即小文件的百分比、大文件的百分比,小于128M的为小文件)。

7

读写次数

峰值每秒读/写次数(单节点读11k/s,写3k/s)。

8

吞吐量

峰值每秒读/写吞吐量(每节点100MB/S)。

网络方案

迁移方案支持各种网络选型:公网、VPN、专线等。根据实际情况选择网络方案,两端网络分别与CDM互通即可迁移。

表2 网络方案

迁移网络类型

优点

缺点

专线

  • 性能稳定:时延低至毫秒级。
  • 带宽选择范围可达几十Gbit/s。
  • 数据传输安全性高。
  • 成本高:一般是包年包月。
  • 源端和目的端私网IP地址不能重叠。
  • 开通时间长:一般需提前1个月申请。

VPN

  • 组网灵活,随时搭建。
  • 稳定性较好,安全性较好。
  • 成本适中:公网费用+VPN费用。
  • 时延较高。
  • 源端和目的端私网IP地址不能重叠。

公网IP

  • 支持源端和目的端私网IP一致的情况下实施迁移。
  • 带宽任意选择(Mbit/s~Gbit/s)。
  • 即买即用,快速绑定。
  • 成本低。
  • 稳定性差:带宽可能无法全部利用,迁移速率相对较慢。
  • 公网传输数据有泄漏风险。

约束与限制

  • 搬迁数据量较大时,对网络通信要求较高,执行搬迁任务时,可能会影响其他业务,建议在业务空闲期进行数据迁移任务。
  • CDM迁移方式无法迁移文件的属性,例如owner、ACL、checksum信息。
  • 本章节以通过华为云CDM服务 2.9.2.200版本进行数据迁移为例介绍。不同版本操作可能有差异,具体操作详情以实际版本对应的操作指导为准。
  • CDM服务支持迁移的数据源可参考支持的数据源,数据源为Apache HDFS时,建议使用的版本为2.8.X、3.1.X,请执行搬迁前务必确认是否支持搬迁。

步骤1:新建数据连接

  1. 登录CDM管理控制台。
  2. 创建CDM集群,该CDM集群的安全组、虚拟私有云、子网需要和迁移目的端集群保持一致,保证CDM集群和MRS集群之间网络互通。
  3. 在“集群管理”页面单击待操作集群对应“操作”列的“作业管理”。
  4. 在“连接管理”页签,单击“新建连接”。
  5. 参考CDM服务的新建连接页面,分别添加到迁移源端集群和迁移目的端集群的两个HDFS连接。

    连接类型根据实际集群来选择,如果是MRS集群,连接器类型可以选择“MRS HDFS”,如果是自建集群可以选择“Apache HDFS”。

    图3 HDFS连接

步骤2:新建迁移作业

  1. 在“表/文件迁移” 页签,单击“新建作业”。
  2. 选择源连接、目的连接:

    • 作业名称:用户自定义任务名称,名称由英文字母、下划线或者数字组成,长度必须在1到256个字符之间。
    • 源连接名称:选择迁移源端集群的HDFS连接,作业运行时将从此端复制导出数据。
    • 目的连接名称:选择迁移目的端集群的HDFS连接,作业运行时会将数据导入此端。

  3. 请参见配置HDFS源端参数配置源端连接的作业参数,需要迁移的文件夹可通过“目录过滤器”和“文件过滤器”参数设置符合规则的目录和文件进行迁移。

    • 如果使用CDM进行全量数据迁移,在“目的端作业配置”中的参数“重复文件处理方式”选择“替换重复文件”。
    • 如果使用CDM进行增量数据迁移,在“目的端作业配置”中的参数“重复文件处理方式”选择“跳过重复文件”。
    例如迁移匹配“/user/test*”文件夹下文件,该场景下“文件格式”固定为“二进制格式”。
    图4 配置作业参数

  4. 请参见配置HDFS目的端参数配置目的端连接的作业参数。
  5. 单击“下一步”进入任务配置页面。

    • 如需定期将新增数据迁移至目的端集群,可在该页面进行配置,也可在任务执行后再参考步骤 3配置定时任务。
    • 如无新增数据需要后续定期迁移,则跳过该页面配置直接单击“保存”回到作业管理界面。
      图5 任务配置

  6. 选择“作业管理”的“表/文件迁移”页签,在待运行作业的“操作”列单击“运行”,即可开始HDFS文件数据迁移,并等待作业运行完成。

步骤3:检查迁移后的文件信息

  1. 使用客户端安装用户登录迁移目的端集群客户端节点。
  2. 执行如下命令查看迁移目的端集群中已迁移的文件。

    cd 客户端安装目录

    执行以下命令加载环境变量:

    source bigdata_env

    如果集群已启用Kerberos认证(安全模式),执行以下命令进行用户认证。集群未启用Kerberos认证(普通模式)无需执行用户认证。

    kinit 组件业务用户
    hdfs dfs -ls -h /user/

  3. (可选)如果源端集群中有新增数据需要定期将新增数据迁移至目的端集群,则配置定期任务增量迁移数据,直到所有业务迁移至目的端集群。

    1. 在CDM集群中选择“作业管理”的“表/文件迁移”页签。
    2. 在迁移作业的“操作”列选择“更多 > 配置定时任务”。
    3. 开启定时执行功能,根据具体业务需求设置重复周期,并设置有效期的结束时间为所有业务割接到新集群之后的时间。
      图6 配置定时任务

常见问题

迁移HDFS文件,无法获取块,具体请参考迁移HDFS文件,报错无法获取块怎么处理?

相关文档