跳到主要内容

创建数据任务

接口描述

创建数据迁移、同步、校验、订正等任务

接口地址

/cloudcanal/console/api/v1/openapi/datajob/create

请求方式

POST

请求参数

参数名称参数说明请求类型是否必须数据类型
clusterId链接数据源的集群idbodylong
srcDsId源端数据源idbodylong
srcHostType源数据源host类型

PRIVATE
PUBLIC
bodyString
srcSchema源端库表描述,详见 数据源schema说明bodyString
dstDsId目标数据源idbodylong
dstHostType目标数据源host类型

PRIVATE
PUBLIC
bodyString
dstSchema目标库表描述,可由 srcSchema 配合 mappingDef 计算得出,可为空bodyString
mappingDef库表映射,详见 映射规则说明bodyString
jobType任务类型,可通过 获取任务类型 接口查询获取bodyString
initialSync如果是数据同步任务,是否需要初始化数据(全量迁移)bodyBoolean
shortTermNum如果有短期同步,持续多少天bodyint
shortTermSync如果是数据迁移任务,是否需要短期同步bodyBoolean
specId规格idbodyint
dataJobDesc任务描述bodyString
fullPeriod是否是周期性全量迁移bodyBoolean
fullPeriodCronExpr周期性全量迁移 CronTab 表达式bodyString
autoStart是否自动启动bodyBoolean
checkOnce增量追上后是否做一次全量数据校验bodyBoolean
checkPeriod是否是周期性校验bodyBoolean
checkPeriodCronExpr周期性校验 CronTab 表达式bodyString
dstCaseSensitiveType目标元数据大小写类型

UpperCase
LowerCase
Sensitive
NoSpecified
bodyString
srcCaseSensitiveType源端元数据大小写类型

UpperCase
LowerCase
Sensitive
NoSpecified
bodyString
srcDsCharset源端数据源编码,可通过 根据数据源类型获取编码列表 接口查询获取bodyString
tarDsCharset目标端数据源编码,可通过 根据数据源类型获取编码列表 接口查询获取bodyString
dstCkTableEngine如果目标为 ClickHouse ,表引擎选择

CollapsingMergeTree
ReplacingMergeTree
bodyString
dstMqDefaultTopic如果目标为消息(Kafka/RocketMQ) 且全库迁移,给同步过程中新增表的默认投递 topicbodyString
dstMqDefaultTopicPartitions默认投递 topic 分区数bodyint
dstSchemaLessFormat如果目标为消息(Kafka/RocketMQ)或缓存(Redis), 指定数据的格式

CLOUDCANAL_JSON_FOR_MQ
CANAL_JSON_FOR_MQ
VALUE_JSON_FOR_CACHE
VALUE_COL_CAMEL_CASE_JSON_FOR_CACHE
bodyString
srcSchemaLessFormat如果源端为消息(Kafka/RocketMQ)或缓存(Redis), 指定数据的格式

CLOUDCANAL_JSON_FOR_MQ
CANAL_JSON_FOR_MQ
VALUE_JSON_FOR_CACHE
VALUE_COL_CAMEL_CASE_JSON_FOR_CACHE
bodyString
filterDDL是否过滤 DDL 同步,true 表示过滤, false 表示不过滤bodyBoolean
kafkaConsumerGroupId如果源端为 Kafka, 指定 Consumer GroupbodyString
srcRabbitExchange如果源端为 RabbitMQ, 指定 ExchangebodyString
srcRabbitMqVhost如果源端为 RabbitMQ, 指定 VHostbodyString
srcRocketMqGroupId如果源端为 RocketMQ, 指定 Group IDbodyString
keyConflictStrategy如果目标端是关系型数据库, 主键或者唯一键约束冲突如何响应。

IGNORE(忽略)
REPLACE(替换)
EXCEPTION(暂不支持)
bodyString
kuduNumReplicas如果目标端是Kudu,其副本数bodyint
schemaWhiteListLevel白名单级别,如果为空,则默认完全白名单模式(列变更操作除外),目前支持 DB 级别和不设任何值

NONE
DB
SCHEMA
TABLE
bodyString
structMigration是否做结构迁移,如果 srcSchema 中存在 targetAutoCreate 为 true 的项时,此值为truebodyBoolean
dbHeartbeatEnable开启数据源端心跳检测bodyBoolean

公共响应结果

参数名称参数说明类型(java)不为空
code1:成功 0:失败string
dataobject
msgstring
requestIdstring

data 参数说明

data 是一个数字, 表示正在创建的任务 id .可以用这个id查询任务记录,得到异步任务 id ,再查询异步任务了解创建进程

响应示例

{
"requestId": "422622b9-2bf5-11ec-8b3e-172e4c81a5c3",
"code": "1",
"msg": "request success",
"data": 123243
}