tencent cloud

文档反馈

创建数据一致性校验(MongoDB)

最后更新时间:2024-02-02 11:20:46

    操作场景

    数据一致性校验,即 DTS 对数据迁移的源库和目标库的表数据进行对比,并给出对比结果和不一致详情,方便用户快速确定业务的割接时间。数据一致性校验任务是独立进行的,不会影响源数据库的正常业务,也不会影响 DTS 的任务。
    数据一致性校验任务可以采用自动触发形式,也可以采用手动创建形式。
    自动触发,在配置迁移任务时,数据一致性检查勾选了全量检查迁移对象,则后续任务进行到同步增量步骤时自动触发一次一致性校验任务。
    手动创建,在 DTS 任务步骤进行到同步增量时,手动创建一致性校验任务,支持多次创建。

    注意事项

    数据一致性校验的范围,仅对比源数据库选择的对象和迁移到目标数据库的对象,如果用户在迁移过程中向目标库进行数据写入,则这部分数据不包含在校验范围内。
    数据一致性校验任务可能会增加源数据库实例的负载,因此请在业务低峰期进行操作。
    数据一致性校验的任务可以重复执行,但一个 DTS 实例在同一时刻只能发起一个数据一致性校验任务。
    如果在数据一致性校验任务还未结束时,用户选择完成或者终止 DTS 任务,则数据一致性校验任务会失败。
    因为一致性校验需要在源数据库中创建新库 __tencentdb__,并在该库下写入 CheckSum 表,所以源数据库为只读时将会跳过一致性校验。

    约束限制

    当前校验任务对 DDL 操作不感知,如果在迁移过程中,用户对源库做了 DDL 操作,会出现校验结果不一致,需要用户重新发起校验任务才能得到准确的对比结果。

    自动触发一致性校验任务

    数据迁移任务设置迁移选项及选择迁移对象页面,数据一致性检查勾选全量检查迁移对象,当后续任务进行到同步增量步骤时自动触发一次一致性校验任务。
    说明:
    自动触发一致性校验任务,默认会发起全量数据的内容校验和所有数据库信息校验,如需筛选校验对象,请选择手动创建一致性校验任务。

    手动创建一致性校验任务

    1. 登录 DTS 控制台
    2. 数据迁移页面,选择需要校验的迁移任务,在操作列选择更多 > 创建数据一致性校验
    3. 单击创建数据一致性校验
    说明:
    数据一致性校验需要在 DTS 任务步骤进行到同步增量时,才可以创建。如果界面按钮呈灰色,则 DTS 任务状态不满足条件,如任务未进行到同步增量步骤、任务失败、任务终止。
    
    4. 在弹出的对话框中,单击确定
    
    5. 配置数据一致性校验参数后,单击启动数据对比
    校验对象:支持选择全部迁移对象,或者自定义选择
    数据库信息:支持校验索引片键库表信息。源库和目标库都为分片集群时,支持选择片键进行校验。
    数据校验:行数校验,即对源库和目标库的数据行数进行对比;内容校验,即对源库和目标库的数据内容进行对比。
    抽样对比:选择内容校验时,支持抽取一定比例的数据进行对比,因为对一些数据量较大的场景,抽取全部数据校验可能会增加源库的负载,请用户根据业务情况选择抽样配比。
    

    查看数据一致性校验结果

    1. 在迁移任务首页,最后一次校验结果列,可查看校验结果,一致或者不一致,单击查看更多进入校验详情页。
    
    2. 单击查看,即可查看校验结果。
    
    3. 校验一致的结果示例:
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持