创建数据对比任务
用于创建一个新的数据对比任务,并指定源端、目标端以及需要对比的库表范围。
请求地址:/openapi/v1/comparedata/create
请求方法:POST
调用前准备
sourceDsId和targetDsId可通过 获取数据源列表 返回结果中的data[].datasourceId获取。- 如果数据源还未创建,可先调用 创建数据源,再使用响应中的
data.datasourceId。 databaseName、targetDatabase、tableName、targetTable需要使用源端和目标端实例中的真实库名、表名。
请求参数
| 参数 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
| name | String | 是 | 任务名称。建议使用能体现业务和对比范围的名称,便于后续查询和区分。 | compare-docx-proof-20260508163538 |
| sourceDsId | String | 是 | 源端数据源 ID,即被作为基准的一侧数据源。可从 获取数据源列表 的 data[].datasourceId 获取。 | ds-ct192k3jlj4f |
| targetDsId | String | 是 | 目标端数据源 ID,即与源端进行对比的另一侧数据源。可从 获取数据源列表 的 data[].datasourceId 获取。 | ds-d37s953l33d3 |
| taskMode | String | 是 | 对比类型。当前示例值为 FULL,表示全量对比。 | FULL |
| objectConfig | JSON | 是 | 需要对比的对象范围配置。通过 all、databaseList、tableList 组合指定实例、库和表的对比范围。 | 见下方示例 |
objectConfig 字段说明
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| all | Boolean | 是否直接选取整个实例下的全部对象。为 true 时,可不再逐个指定库表;为 false 时,需要通过 databaseList 指定要对比的库。 | false |
| databaseList | Array | 需要对比的库列表。多个库时按 JSON 数组传入多个对象。 | [{...}] |
databaseList 字段说明
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| databaseName | String | 源端数据库名称。需与 sourceDsId 对应实例中的实际库名一致。 | 9zdbtest2 |
| targetDatabase | String | 目标端数据库名称。需与 targetDsId 对应实例中的实际库名一致。 | 9zdbtest3 |
| all | Boolean | 是否对比该库下的全部表。为 true 时,表示整库下的表都参与对比;为 false 时,需要传入 tableList。 | true |
| tableList | Array | 需要对比的表列表。多个表时按 JSON 数组传入多个对象。 | [{...},{...}] |
tableList 字段说明
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| tableName | String | 源端表名称。需与源端库中的实际表名一致。 | sbtest1 |
| targetTable | String | 目标端表名称。需与目标端库中的实际表名一致。 | sbtest1 |
如何使用返回值
成功响应中的 data 为本次创建出的 taskId。后续调用 启动数据对比任务、查询数据对比主任务详情、停止数据对比任务 和 删除数据对比任务 时,都需要传入该值。
请求示例
{
"name": "compare-docx-proof-20260508163538",
"objectConfig": {
"all": false,
"databaseList": [
{
"databaseName": "9zdbtest2",
"targetDatabase": "9zdbtest3",
"all": true,
"tableList": [
{
"tableName": "sbtest1",
"targetTable": "sbtest1"
},
{
"tableName": "sbtest2",
"targetTable": "sbtest2"
}
]
}
]
},
"sourceDsId": "ds-ct192k3jlj4f",
"targetDsId": "ds-d37s953l33d3",
"taskMode": "FULL"
}
返回参数
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| success | Boolean | 请求是否成功。 | true |
| requestId | String | 请求 ID,可用于问题排查和链路追踪。 | Em1u9SHH-kqqraVGnllse6BZdmnh5DQM |
| data | String | 数据对比任务 ID,即后续接口使用的 taskId。 | cd-tepmjmnj6o |
调用成功示例
{
"success": true,
"requestId": "Em1u9SHH-kqqraVGnllse6BZdmnh5DQM",
"data": "cd-tepmjmnj6o"
}