更新时间:2023-11-15 GMT+08:00

创建对比任务

功能介绍

创建对比任务。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

接口约束

当前版本仅支持任务在INCRE_TRANSFER_STARTED状态时创建对比任务,父任务不支持调用。

URI

POST /v3/{project_id}/jobs/create-compare-task

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一Region下的Project ID。

获取方法请参见获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

指定类型为application/json。

缺省值:application/json

X-Auth-Token

String

从IAM服务获取的用户Token。

X-Language

String

请求语言类型。

缺省值:en-us

取值:

  • en-us
  • zh-cn
表3 请求Body参数

参数

是否必选

参数类型

描述

job_id

String

任务ID。

object_level_compare_type

String

对象级对比类型,取值为空代表不创建对象级对比。object_level_compare_type和data_level_compare_info都为空时,只查询已创建的对比任务列表。

取值:objects

data_level_compare_info

Object

数据级对比信息,不创建数据级对比时可以不传。object_level_compare_type和data_level_compare_info都为空时,只查询已创建的对比任务列表。

详情请参见表4

表4 data_level_compare_info字段数据结构说明

参数

是否必选

参数类型

描述

conflict_policy

String

一个任务只允许有一个未完成的数据级对比任务,该字段决定对未完成数据级对比任务的处理方式。cancel:取消后重新创建。keep:保持未完成的不再创建。

取值:

  • cancel
  • keep

compare_type

String

数据级对比类型,lines:行对比,contents:内容对比。

取值:

  • lines
  • contents
    说明:

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

compare_mode

String

数据级对比模式,取值为空时需要在compare_object_infos或者compare_object_infos_with_token传对象信息,quick_comparison-快速对比,需要加入该功能的白名单才能使用。

缺省值:quick_comparison

取值:quick_comparison

start_time

String

对比任务启动时间,取值为空代表立即启动。

compare_object_infos

Array of objects

数据级对比的对象。非“快速对比”模式时,compare_object_infos和compare_object_infos_with_token根据链路二选一传值,不允许都为空。

详情请参见表5

compare_object_infos_with_token

Array of objects

数据级对比的对象(Cassandra灾备专用,带token信息)。非“快速对比”模式时,compare_object_infos和compare_object_infos_with_token根据链路二选一传值,不允许都为空。

详情请参见表6

表5 compare_object_infos字段数据结构说明

参数

是否必选

参数类型

描述

db_name

String

库名。

table_name

Array of strings

该库下的表名列表。

表6 compare_object_infos_with_token字段数据结构说明

参数

是否必选

参数类型

描述

db_name

String

库名。

table_name_with_token

Array of objects

该库下的表信息列表(带token)。

详情请参见表7

表7 table_name_with_token字段数据结构说明

参数

是否必选

参数类型

描述

table_name

String

表名。

min_token

String

该表的min token。

max_token

String

该表的max token。

响应参数

状态码: 200

表8 响应Body参数

参数

参数类型

描述

job_id

String

任务id。

object_level_compare_create_result

Object

创建对象级对比的结果。

详情请参见表9

data_level_compare_create_result

Object

创建数据级对比的结果。

详情请参见表9

error_code

String

错误码。

error_msg

String

错误信息。

表9 object_level_compare_create_result和data_level_compare_create_result字段数据结构说明

参数

参数类型

描述

compare_task_id

String

对比任务创建成功后,返回对比任务的id,用于查询该对比任务的结果。

error_code

String

错误码。

error_msg

String

错误信息。

请求示例

创建对象级对比和数据级行对比任务:

https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/create-compare-task

{
  "job_id" : "94800607-3cd8-4f7d-a340-63a10f8jb502",
  "object_level_compare_type" : "objects",
  "data_level_compare_info" : {
    "conflict_policy" : "keep",
    "compare_type" : "lines",
    "compare_mode" : null,
    "start_time" : null,
    "compare_object_infos" : [ {
      "db_name" : "may_5",
      "table_name" : [ "table_name_0", "table_name_1" ]
    } ]
  }
}

响应示例

状态码: 200

OK

{
  "job_id" : "94800607-3cd8-4f7d-a340-63a10f8jb502",
  "object_level_compare_create_result" : {
    "compare_task_id" : "dc1683d9-bdf2-4be9-967f-6ef0953369bc"
  },
  "data_level_compare_create_result" : {
    "compare_task_id" : "08cad1f8-9de2-42fa-b8ce-6c36daf730f6"
  }
}

状态码

状态码

描述

200

OK

400

Bad Request

错误码

请参见错误码