结合调度策略和覆盖策略实现增量迁移

更新时间:
重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

本文介绍如何结合调度策略和覆盖策略实现增量数据迁移。

概述

在线迁移服务执行迁移任务时,每一轮迁移都需要对源端数据进行全量扫描。若在迁移过程中产生了增量数据,需要等待下一轮执行才能扫描到并将其迁移到目的端。本文档将介绍如何结合自动调度策略和覆盖策略来实现增量数据的迁移。

警告

在线迁移服务无法保证增量数据迁移的及时性,因此该方案不适用于文件数量较多且对时效性要求严格的场景。

在迁移过程中,无法确保数据的一致性,因此务必在迁移任务完成后对目的端的迁移数据进行校验。在删除源数据之前,必须确认目的端的迁移数据无误,否则由此导致的数据丢失所引起的一切损失和后果均由您自行承担。

迁移实施教程

结合调度策略和覆盖策略实现增量数据迁移,适用于各种迁移场景,如需了解更详细的信息,请参考迁移教程,并根据具体场景选择相应的迁移教程。

在创建任务时,需要选择相应的调度策略和覆盖策略,具体介绍如下:

策略

描述

覆盖策略

在线迁移服务提供三种文件覆盖方式:不覆盖全部覆盖根据最后修改时间覆盖

为了实现增量迁移,选择根据最后修改时间覆盖,如果目的端文件符合跳过的条件,则不会重新迁移该文件。

说明

根据最后修改时间覆盖仍然会请求源端和目的端获取文件元信息。

调度策略

配置定时任务或周期调度,请参见执行频率参考。任务执行ID在执行轮次限制内(任务从启动到结束为一轮执行,执行ID加1),会根据启动时间和暂停时间自动调度任务,超过执行轮次限制时,不会再自动调度,但您仍然可以手动进行调度。

在线迁移服务将根据调度策略自动调度您的任务。每一轮数据迁移都会进行全量数据扫描。如果目标端已经存在同名文件,系统将通过最后修改时间覆盖策略的判断条件来确定是否跳过,从而实现数据的增量迁移。

说明

请查看每种场景的迁移教程->迁移实施->创建任务->执行时间,以获取有关周期调度或指定执行时间的描述。

请查看每种场景的迁移教程->迁移实施->创建任务->覆盖方式,以获取覆盖策略的详细信息。

迁移示例

示例:每天零点进行一次增量数据迁移。

假设用户在源端的OSS上存储了2000个历史数据文件,每天不定时会产生大约50个增量数据文件,用户希望每天零点时将这些增量数据上传至OSS。

请按照以下步骤参考阿里云OSS迁移教程,实现增量迁移:

  1. 创建源OSS 数据地址

  2. 创建目的OSS 数据地址

  3. 创建迁移任务,覆盖方式选择根据最后修改时间覆盖;任务调度选择周期调度执行频率设置每天零点执行,执行次数100次。

说明

根据此配置,在任务执行100轮次内,在线迁移服务会在每天零点自动启动您的任务,全量扫描源端数据,并根据最后修改时间覆盖策略将增量数据迁移到目的端。超出100轮次限制后,在线迁移服务将不再自动启动您的任务,但您仍然可以手动启动任务。

如果任务的文件数量很大,每轮执行在一天内不能完成,在零点启动任务时,任务已经在运行中,则会在下一个零点尝试启动任务。