数据复制服务 DRS-将Redis集群迁移到GeminiDB Redis:使用须知

时间:2024-06-24 11:41:32

使用须知

DRS全量+增量迁移过程一般包含四个阶段:任务启动阶段、全量阶段、增量阶段、结束任务阶段(单全量任务则包含三个阶段)。为了确保迁移各个阶段的平顺,在创建迁移任务前,请务必阅读以下使用须知。

表3 使用须知

类型名称

使用和操作限制

任务启动前须知

  • 源数据库对象要求:
    • 创建全量+增量任务,需要支持PSYNC命令。
  • 目标数据库对象要求:
    • 目标库必须是本云GeminiDB Redis实例。
    • 迁移前目标库GeminiDB Redis实例建议为空。
    • 目标数据库实例版本要高于或等于源数据库版本。
  • 其他使用须知:
    • 全量+增量任务使用解析RDB的方式读取数据。
    • 迁移Lua脚本时,源库需要同时有其它数据,否则无法解析出RDB中的Lua脚本,导致Lua脚本迁移失败。
    • DRS不会对目标库进行FLUSH等高危操作,所以对于List列表类型数据,可能出现重复的数据。
    • 源库测试连接时,必须填写Redis集群所有分片的IP地址。同时为了避免影响源端Redis实例的业务访问,强烈建议从源实例的副本节点(从节点)进行数据迁移,即推荐填写Redis集群的Slave节点IP地址。
    • 为保障增量迁移有效进行,建议迁移前,评估源库Redis参数,将源库的配置文件redis.conf中repl-backlog-size参数的值适当调大。
    • 迁移过程中,如果源库Redis集群发生扩缩容(例如增加或者减少分片)、规格变配(例如扩大内存),则需要重新配置迁移任务。且为保证数据一致性,在重新配置任务前,建议先清空已迁移至目标GeminiDB Redis的数据。
    • 如果源库中的某些Key设置了过期(expire)策略,由于可能存在Key已过期但未被及时删除的情况,所以在目标库中查看Key数量(例如通过info命令查看)时会比源库的Key数量少。为保障数据的一致性,建议设置延长Key的过期时间。

全量迁移阶段须知

  • 迁移过程中,不允许修改连接源和目标数据库的密码,或修改源和目标数据库的端口号。
  • 迁移过程中,如果源库Redis集群发生主备倒换,任务会失败,需要清空目标库重置任务。
  • 迁移过程中,不允许对正在迁移中的目标数据库进行修改操作。

增量迁移阶段须知

  • 迁移过程中,不允许修改连接源和目标数据库的密码,或修改源和目标数据库的端口号。
  • 迁移过程中,如果源库Redis集群发生主备倒换,任务会失败,需要清空目标库重置任务。
  • 迁移过程中,不允许对正在迁移中的目标数据库进行修改操作。
support.huaweicloud.com/realtimemig-drs/drs_04_0509.html