更新时间:2024-03-27 GMT+08:00
多对一的场景约束及操作建议
因业务需要,不同实例、不同表的数据需要进行合并时,数据复制服务提供的数据迁移和实时同步均支持多对一的场景。
操作建议
- 为避免创建任务过程中出现空间不足问题,建议提前计算源数据库的数据量总和,根据该总和一次性规划目标实例的磁盘空间,剩余磁盘空间需大于源库实际数据量大小的总和(例如“源系统1”数据量大小为1GB,“源系统2”数据量大小为3GB,“源系统3”数据量大小为6GB,则目标实例的剩余磁盘空间应该大于10GB)。
- 对于MySQL引擎,目标端参数的设置需要考虑整体资源的提升,建议使用第一个任务的参数对比功能中“常规参数”的“一键修改”(其中max_connections除外),而“性能参数”应该结合目标端实际规格做相应的手工设置。
- 对于多对一同步任务场景,由于该场景是一个一个任务逐步创建的,后面创建任务时可能会造成已创建任务的同步阻塞,为了避免这个情况发生,请注意创建技巧。 每个同步任务都会涉及创建索引步骤,而创建索引时数据库可能会导致Schema锁进而阻塞Schema下的其他表的数据同步,从而导致后创建的任务可能在索引创建阶段对已经同步中的任务阻塞一段时间,我们可以选择在创建同步任务最后设置为“稍后启动”,这样设定在业务低峰期后创建任务,从而避免后创建任务的索引创建对已有任务的同步阻塞。
- 对于多对一同步任务场景,不建议使用内容对比,因为内容对比无法保证一致性。
- 如果涉及表级汇集的多对一同步任务,则不支持DDL,否则会导致同步全部失败。
图1 参数对比
场景一:多对一数据迁移
数据迁移是以整体数据库搬迁为目的,可以实现实例级多对一迁移,不支持源端具有同名的数据库,不支持库名映射。
图2 多对一数据迁移
场景二:多对一实时同步
实时同步不同于数据迁移,是维持不同业务之间的数据持续性流动,可以实现表级数据多对一同步,并支持库级映射。
图3 多对一实时同步
父主题: 通用操作
通用操作 所有常见问题
- DRS界面信息重叠是什么原因
- 目标库读写设置是实例级还是库级
- MySQL源库设置了global binlog_format = ROW没有立即生效
- binlog_row_image参数设置为FULL没有立即生效
- 设置的密码不符合目标库的密码复杂度要求时,如何修改密码强度
- 如何设置MongoDB数据库分片集群的分片键
- 扩大带宽是否会对DRS正在进行中的任务产生影响
- 为什么MariaDB和SysDB下的数据不迁移或同步
- 多对一的场景约束及操作建议
- 一对多的场景约束及操作建议
- 数据复制服务的操作日志在哪里查看
- 为什么DRS发送提示信息的语言和页面不符
- 为什么DRS任务自动结束了
- DRS导出任务列表
- 已结束的任务还能重新启动吗
- 重置任务和重新创建任务有什么区别
- DRS支持一键反向功能吗
- 已经创建的SMN主题为什么选择不了
- 任务创建成功后是否支持修改SMN主题
- DDM为源链路源库分片数量和信息怎么填写
- 源端MySQL发生主备倒换,DRS任务会丢数据吗
- DRS对象选择时的全部迁移、表级迁移、库级迁移有什么区别
- 源库或目标库修改密码后如何操作
- 设置SMN主题策略,允许DRS发送消息通知
- DRS任务表数量太多导致任务超时怎么办
- DRS任务创建后支持修改源或目标数据库吗
more