更新时间:2024-03-15 GMT+08:00
如何校验源端与目的端的数据一致性?
主机迁移服务提供了数据一致性校验功能,您可以在全量复制完成后,进行增量同步时,启用并配置该功能,对源端数据和目的端数据进行一致性校验。
注意事项
- 使用该功能前,建议停止源端业务(涉及数据库时需要关闭数据库程序,而不是暂停),否则源端数据一直发生变化,导致源端和目的端数据存在差异。
源端存在数据一直变化的目录,如:SMS-Agent的安装目录,/var/log系统日志目录等,属于正常现象,不代表主机迁移过程中产生了数据差异。
- 数据一致性校验时长与需要校验的文件个数、大小成正比,部分场景可能耗时较长,业务割接耗时会增加,需要您自行评估对业务的影响。
- 该功能可能占用较多的磁盘IO,请评估对源端业务的影响。
约束限制
- 该功能不适用于调整磁盘/分区的迁移场景,可能会出现因为两端对应路径无法准确映射而导致的数据校验差异。
- 该功能不适用于校验跨文件系统的文件或共享文件夹,可能会出现校验误差。
- 为保护源端业务的正常运行,每个目录最多只校验十万个文件。
- 为防止占用过多内存,只校验路径字符串长度小于1024字节的文件。
启用数据一致性校验
- 参考同步增量数据,打开“同步”窗口。
- 开启“是否校验数据一致性”功能,并输入需要进行数据一致性校验的目录路径。请务必输入正确路径,路径错误或路径下不存在文件时,校验结果中会显示校验文件数量为0。
- 需要校验的数据量越大,则一致性校验的用时越长,建议仅对关键目录进行校验。
- 为避免校验数据量过大,以下路径将被屏蔽:
- Linux系统的 "/","/etc","/dev","/sys", "/usr","/boot", "/run"目录。
- Windows系统的分区根目录,如:C:\,D:\;
- 选择校验模式。
- 快速校验:只比对文件的大小和最后修改时间。
- CRC校验:使用CRC64校验码对文件内容进行强校验。CRC校验需要以二进制形式扫描文件内容,占用磁盘IO性能较多且用时较长。
- (可选)选择是否启用复检。只有进行过至少一次一致性校验后,才可以打开复检选项,启用复检将只对上一次校验结果中不一致的文件进行校验。
- 配置完成后,单击“是”,开始增量数据同步并进行数据一致性校验。当同步及校验完成后,可以查看校验结果。
取消数据一致性校验
在开启校验数据一致性功能后,如果想要取消校验,请按如下步骤取消。
- 单击操作列的“更多>暂停”,将同步任务暂停。
- 同步任务暂停后,单击操作列的“开始”,弹出“开始”窗口,
- 关闭校验数据一致性功能,单击“是”,即可取消同步任务中的数据校验步骤。
查看校验结果
当同步及校验完成后,单击服务器操作列的“更多>查看校验结果”,可以查看一致性校验结果简报。
如果校验简报中的校验文件总数为0,表示配置的校验目录路径不存在或该路径下的文件总数为零。
在源端的SMS-Agent的安装目录下(Linux为*/SmsAgent/agent/Logs/;Windows为C://SMS-Agent-Py*/Logs),会生成一个名为"sms_cmp_result.log"的日志文件,其中包含了所有校验不一致的文件。
校验时间参考
下表为源端仅运行迁移业务的测试时长,仅供参考。
操作系统 |
系统规格 |
磁盘性能 |
校验时长(每100 G数据) |
---|---|---|---|
Windows |
2U4G |
5000IOPS/150MBPS |
约17分钟 |
Linux |
2U4G |
5000IOPS/150MBPS |
约13分钟 |
父主题: 产品咨询