文档首页/ MapReduce服务 MRS/ 最佳实践/ 数据迁移/ 数据迁移到MRS前信息收集
更新时间:2024-08-03 GMT+08:00

数据迁移到MRS前信息收集

由于离线大数据搬迁有一定的灵活性,迁移前需要掌握现有集群的详细信息,以能够更好的进行迁移决策。

业务信息调研

  1. 大数据平台及业务的架构图。
  2. 大数据平台和业务的数据流图(包括峰值和均值流量等)。

    识别平台数据接入源、大数据平台数据流入方式(实时数据上报、批量数据抽取)、分析平台数据流向。

    数据在平台内各个组件间的流向,比如使用什么组件采集数据,采集完数据后数据如何流向下一层组件,使用什么组件存储数据,数据处理过程中的工作流等。

  3. 业务作业类型Hive SQL、Spark SQL、Spark Python等,是否需要使用MRS的第三方包,参考MRS应用开发样例
  4. 调度系统,需要考虑调度系统对接MRS集群。
  5. 迁移后,业务割接允许中断时长,识别平台业务优先级。

    识别在迁移过程中不能中断的业务、可短时中断的业务、整体业务迁移可接受的迁移时长,梳理业务迁移顺序。

  6. 客户端部署要求。
  7. 业务执行时间段和高峰时间段。
  8. 大数据集群的数量和大数据集群功能划分,分析平台业务模型。

    各个集群或各个组件分别负责什么业务,处理什么类型的数据。比如实时/离线数据分别使用什么组件处理、数据格式类型、压缩算法等。

集群基本信息收集

表1 集群基本信息

参数

说明

集群名称

-

集群版本

MRS、CDM等集群的版本信息。

节点数及规格

调研现有集群节点数和节点规格。

如果集群硬件异构,请收集多种规格和对应节点数,参见表2

例如:

  • 2台32U64G机器部署NameNode + ResourceManager
  • 2台32U64G机器部署HiveServer
  • 20台16U32G机器部署DataNode和NodeManager

是否开启Kerberos认证

是或否

权限控制及说明

调研各个开启ACL权限控制的组件和配置,通常涉及Yarn、Hive、Impala、HBase等组件。

使用Ranger、Sentry或组件开源的权限能力进行权限控制。

所在Region/AZ

云上资源填写项

虚拟私有云

云上资源填写项

子网

云上资源填写项

安全组

云上资源填写项

表2 硬件信息调研表

节点组

CPU和内存信息

磁盘和网络(按节点组统计)

HDFS

Yarn

-

-

磁盘信息(数据盘大小、磁盘IO、当前磁盘使用率和IO情况)

网络(网卡带宽大小、网络读写速度和峰值)

NameNode

DataNode

JournalNode

NodeManager

ResourceManager

master1

(16U64G)

-

-

1

-

1

-

1

master2

(16U64G)

-

-

1

-

1

-

1

master3

(16U64G)

-

-

-

-

1

-

-

Core-group1

(32U128G)*数量

-

-

-

1

-

1

-

Core-group1

(32U129G)

-

-

-

-

-

-

-

Core-group1

(32U130G)

-

-

-

-

-

-

-

大数据组件信息

使用的大数据组件信息和规划的新版本大数据集群版本信息比较,主要识别版本差异可能对迁移过程的影响,以及对迁移后业务兼容性的影响。

表3 大数据组件信息

大数据组件

源端集群版本

目的端集群版本(以MRS集群版本为准)

说明

HDFS/OBS(或其他文件存储系统)

Hadoop 2.8.3

Hadoop 3.3.1

-

Hive

1.2.1

2.3.3

存储元数据的数据库:MySQL

HBase

1.3.1

1.3.1

-

Spark

2.2.2

3.1.1

-

Kafka

1.1.0

2.11-2.4.0

-

Oozie

2.x

5.1.0

-

MySQL

5.7.1

RDS

-

Flink

1.7

1.15

-

...

...

...

-

待迁移的存量数据及数据量统计

如果使用HDFS作为文件存储系统,可以通过客户端执行hadoop fs -du -h HDFS文件目录命令统计路径下的文件大小。
表4 现有数据量统计

大数据组件

待迁移数据的路径

数据量大小

文件个数或表个数

HDFS/OBS(或其他文件存储系统)

/user/helloworld

XXX

总共:XXX个文件

小于2 MB的文件数量:XXX

Hive

/user/hive/warehouse/

XXX

表个数:XXX

HBase

/hbase

XXX

表个数:XXX

Region个数:XXX

每天新增数据量统计

每天新增数据量主要评估数据增长速度(可以按天/小时等周期维度)。在第一次全量迁移数据后,后续可以定期搬迁老集群新增数据,直到业务完成最终割接。
表5 新增数据量统计

大数据组件

待迁移的数据路径

新增数据量大小

HDFS/OBS(或其他文件存储系统)

/user/helloworld

XXX

Hive

/user/hive/warehouse/

XXX

HBase

/hbase

XXX

网络出口带宽能力

  • 迁移数据可以使用的最大网络带宽和专线带宽(是否可调)。
  • 迁移数据作业每天可以运行的时间段。

流式Kafka集群信息收集

表6 流式Kafka集群信息

收集信息项

描述

Kafka的Topic数量和名称

-

Kafka的本地数据暂存时间

如果每个Topic配置不一样,按Topic粒度收集。

每个Topic的副本数和Partition数量

默认为2,副本数越多数据越可靠,也会消耗磁盘空间。

如果每个Topic配置不一样,按Topic粒度收集。

Kafka生产和消费的流量大小

细化到Topic级别。

Kafka客户端ACK配置Acks

-

数据迁移模型样例

  • 一个离线分析平台的客户业务系统,由Spark Streaming消费Kafka数据存入HDFS,HDFS上进行小文件合并后加载到Hive表中,运营人员可以通过Presto进行Hive数据查询。
    图1 源集群业务图
  • 针对大数据离线平台包括HDFS和Hive数据需要迁移,Kafka、Spark Streaming、HDFS、Hive、Presto的业务程序要在目的端集群上部署。
    图2 迁移示意图