更新时间:2025-02-10 GMT+08:00
分享

校验任务

对比使用场景

对比实时校验项可以清晰反馈出源数据库和目标数据库的数据是否存在差异。为了尽可能减少业务的影响和业务中断时间,校验场景提供了以下几种对比方式:

  • 对象级对比:支持对数据库、表、索引等进行对比。
  • 数据级对比-行对比:对比选择的表的行数是否一致,只查询表的行数,对比速度较快,建议优先使用。
  • 数据级比对-内容比对-静态比对:比对选择的表的内容是否一致,对比速度取决于表的数据量。

内容对比和行数对比不能同时运行。

内容对比和对象级对比不能同时运行。

前提条件

  • 已启动校验任务。

对比链路说明

表1 数据校验各链路支持能力

同步方向

数据流向

对象级对比

行对比

用户对比

静态内容对比

入云

MySQL->MySQL

支持

支持

不支持

支持

入云

MySQL->PostgreSQL

支持

支持

不支持

不支持

入云

MySQL->GaussDB分布式版

支持

支持

不支持

支持

入云

MySQL->GaussDB集中式

支持

支持

不支持

支持

入云

MySQL->TaurusDB

支持

支持

不支持

支持

入云

PostgreSQL->PostgreSQL

支持

支持

支持

支持

入云

PostgreSQL->GaussDB 集中式版

支持

支持

不支持

支持

入云

PostgreSQL->GaussDB分布式版

支持

支持

不支持

支持

入云

DDM->MySQL

支持

支持

不支持

不支持

入云

DDM->DDM

支持

支持

不支持

不支持

入云

Oracle->MySQL

支持

支持

不支持

支持

入云

Oracle->TaurusDB

支持

支持

不支持

支持

入云

Oracle->GaussDB集中式

支持

支持

不支持

支持

入云

Oracle->GaussDB分布式版

支持

支持

不支持

支持

入云

Oracle->DDM

支持

支持

不支持

不支持

入云

Oracle->PostgreSQL

支持

支持

不支持

不支持

入云

DB2 for LUW->GaussDB集中式

支持

支持

不支持

支持

入云

DB2 for LUW->GaussDB分布式版

支持

支持

不支持

支持

入云

TiDB->TaurusDB

支持

支持

不支持

不支持

入云

Microsoft SQL Server->GaussDB(DWS)

支持

支持

不支持

不支持

入云

Microsoft SQL Server->GaussDB集中式

支持

支持

不支持

支持

入云

Microsoft SQL Server->GaussDB分布式版

支持

支持

不支持

支持

入云

Microsoft SQL Server->Microsoft SQL Server

支持

支持

不支持

不支持

入云

MongoDB->DDS

支持

支持

不支持

支持

入云

MariaDB->MariaDB

支持

支持

不支持

支持

入云

MariaDB->MySQL

支持

支持

不支持

支持

入云

MariaDB->TaurusDB

支持

支持

不支持

支持

入云

TaurusDB->TaurusDB

支持

支持

不支持

支持

入云

Dynamo->GeminiDB Dynamo

支持

不支持

不支持

不支持

出云

MySQL->MySQL

支持

支持

不支持

支持

出云

MySQL->CSS/ES

支持

支持

不支持

不支持

出云

DDM->MySQL

支持

支持

不支持

不支持

出云

DDM->Oracle

支持

支持

不支持

不支持

出云

DDS->MongoDB

支持

支持

不支持

支持

出云

PostgreSQL->PostgreSQL

支持

支持

不支持

支持

出云

GaussDB集中式版->MySQL

支持

支持

不支持

不支持

出云

GaussDB集中式版->Oracle

支持

支持

不支持

支持

出云

GaussDB集中式版->GaussDB分布式版

支持

支持

不支持

支持

出云

GaussDB集中式版->GaussDB集中式

支持

支持

不支持

支持

出云

GaussDB集中式版->Informix

支持

支持

不支持

支持

出云

GaussDB集中式版->PostgreSQL

支持

支持

不支持

支持

出云

GaussDB分布式版->MySQL

支持

支持

不支持

不支持

出云

GaussDB分布式版->Oracle

支持

支持

不支持

支持

出云

GaussDB分布式版->GaussDB布式版

支持

支持

不支持

不支持

出云

GaussDB分布式版->GaussDB集中式

支持

支持

不支持

不支持

出云

GaussDB分布式版->PostgreSQL

支持

支持

不支持

支持

出云

TaurusDB->MySQL

支持

支持

不支持

支持

出云

TaurusDB->CSS/ES

支持

支持

不支持

不支持

出云

TaurusDB->Oracle

支持

支持

不支持

不支持

出云

MariaDB->MariaDB

支持

支持

不支持

支持

自建-自建

Oracle->GaussDB集中式

支持

支持

不支持

支持

自建-自建

Oracle->GaussDB分布式版

支持

支持

不支持

支持

自建-自建

MySQL->CSS/ES

支持

支持

不支持

不支持

自建-自建

MySQL->GaussDB集中式

支持

支持

不支持

不支持

自建-自建

GaussDB集中式版->Oracle

支持

支持

不支持

支持

自建-自建

GaussDB集中式版->GaussDB集中式

支持

支持

不支持

不支持

自建-自建

GaussDB分布式版->Oracle

支持

支持

不支持

支持

自建-自建

GaussDB分布式版->GaussDB布式版

支持

支持

不支持

不支持

自建-自建

DB2 for LUW->GaussDB集中式

支持

支持

不支持

支持

自建-自建

DB2 for LUW->GaussDB分布式版

支持

支持

不支持

支持

DRS提供的数据比对功能可以清晰反馈出源数据库和目标数据库的数据是否存在差异,目前对于以下数据类型,DRS不支持内容对比,进行内容对比时会自动跳过。

表2 不支持内容对比的数据类型

源数据库类型

数据类型

MySQL

TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT

GaussDB

TEXT、CLOB、BLOB、BYTEA、INTERVAL DAY TO SECOND、INTERVAL

Oracle

BLOB、NCLOB、CLOB、LONG RAW、LONG、INTERVAL DAY TO SECOND、INTERVAL YEAR TO MONTH、UROWID、BFILE、XMLTYPE、SDO_GEOMETRY

Microsoft SQL Server

TEXT、NTEXT、IMAGE、BINARY、VARBINARY、HIERARCHYID、XML、TIMESTAMP

DB2 for LUW

CLOB, DBCLOB, BLOB, BINARY, VARBINARY, TEXT

PostgreSQL

lob, text, byte, interval

对于以下数据类型作为主键,DRS也不支持内容对比,进行内容对比时会归到无法比对的表中。

表3 不支持内容对比的主键类型

源数据库类型

数据类型

MySQL

TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT、FLOAT、TIMESTAMP、DATE、DATETIME

GaussDB

TEXT、CLOB、BLOB、BYTEA、INTERVAL DAY TO SECOND、INTERVAL、REAL、DOUBLE PRECISION、BOOL、TIME、TIMETZ、TIMESTAMP、TIMESTAMPTZ、DATE

Oracle

BLOB、NCLOB、CLOB、LONG RAW、LONG、INTERVAL DAY TO SECOND、INTERVAL YEAR TO MONTH、UROWID、BFILE、XMLTYPE、SDO_GEOMETRY、BINARY_FLOAT、BINARY_DOUBLE、FLOAT、RAW、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE、DATE

Microsoft SQL Server

FLOAT、REAL、DATE、DATETIME、DATETIME2、DATETIMEOFFSET、TIME、TIMESTAMP、TEXT、NTEXT、IMAGE、BINARY、VARBINARY

DB2 for LUW

CLOB、DBCLOB、BLOB、BINARY、VARBINARY、TEXT

创建对比任务

  1. “校验任务管理”界面,选择指定的校验任务,单击任务名称。
  2. 页面跳转至“基本信息”,切换到“校验任务”页签,进入“对比”信息页面。
  3. 选择对比的内容。

    • 创建对象级对比:选择“对象级对比”页签,单击“开始对比”后稍等一段时间再单击,观察源数据库和目标数据库的各个对比项结果是否一致。若需要查看结果详情,可单击指定对比项操作列的“详情”按钮。
      图1 对象对比

    • 创建数据级对比:选择“数据级对比”页签,单击“创建对比任务”,选择“对比类型”和“对象选择”,单击“是”提交对比任务。
      图2 创建数据对比任务

      • 行数对比:用于对比源和目标端的表的行数是否相等。
      • 内容对比:用于对比源和目标端的表的内容是否相同。

        静态对比:适用于无数据变化的非业务时间。

      • 对象选择:可根据具体的业务场景选择需要进行对比的对象。
    • 创建数据过滤对比:选择“数据级对比”页签,单击“创建对比任务”,选择“对比类型”、“对比方式”勾选“进行数据过滤”选项。
      图3 创建数据过滤对比任务

      选择具体的对象,单击“下一步”,选择需要校验的表,输入过滤条件,单击“校验规则”

      图4 选择对象

      校验完成后,点击“生成过滤规则”,然后单击“是”完成对比任务的创建。

      图5 过滤规则

  4. 对比任务提交成功后,在“数据级对比”页签,单击刷新列表,可以查看到所选对比类型的对比结果。

    图6 同步数据对比

    • 若需要查看行数对比或者内容对比详情,可单击指定对比类型操作列的“查看对比报表”,页面将跳转至新的窗口,可观察对比结果的详细情况。
      图7 数据级对比详情

    • 单击“导出报告”,可导出对比报告。
    • 导出的报告,可以单击“下载报告”,将报告下载至本地。
    • 已取消的对比任务也支持查看对比报表。
    • 导出的报告保留24小时,请尽快下载至本地。

相关文档

    OSZAR »