CreateDIJob - 创建任务

创建数据集成新版任务。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求参数

名称类型必填描述示例值
DestinationDataSourceTypestring

目标端数据源类型,枚举值:Hologres、Hive。

Hologres
Descriptionstring

任务的描述

任务描述
SourceDataSourceTypestring

源端数据源类型,枚举值:MySQL。

MySQL
ProjectIdlong

DataWorks 工作空间的 ID。您可以登录 DataWorks 控制台,进入工作空间管理页面获取 ID。

该参数用来确定本次 API 调用操作使用的 DataWorks 工作空间。

10000
JobNamestring

任务名称。

mysql_to_holo_sync_8772
MigrationTypestring

同步类型,可选的枚举值有:

  • FullAndRealtimeIncremental(全量和实时增量)
  • RealtimeIncremental(实时增量)
  • Full(全量)
  • OfflineIncremental(离线增量)
  • FullAndOfflineIncremental(全量+离线增量)
FullAndRealtimeIncremental
SourceDataSourceSettingsarray<object>

源端数据源设置列表。

object

单个源端数据源设置。

DataSourceNamestring

数据源名称。

mysql_datasource_1
DataSourcePropertiesobject

数据源属性。

Encodingstring

数据库编码。

UTF-8
Timezonestring

时区

GMT+8
DestinationDataSourceSettingsarray<object>

目标端数据源设置列表。

object

单个目标端数据源设置。

DataSourceNamestring

数据源名称。

holo_datasource_1
ResourceSettingsobject

资源设置。

OfflineResourceSettingsobject

离线同步资源。

RequestedCudouble

离线同步使用的数据集成资源组 cu

2.0
ResourceGroupIdentifierstring

离线同步使用的数据集成资源组标识。

S_res_group_111_222
RealtimeResourceSettingsobject

实时同步资源。

RequestedCudouble

实时同步使用的数据集成资源组 cu

2.0
ResourceGroupIdentifierstring

实时同步使用的数据集成资源组标识。

S_res_group_111_222
ScheduleResourceSettingsobject

调度资源

RequestedCudouble

离线同步任务使用的调度资源组 cu

2.0
ResourceGroupIdentifierstring

离线同步任务使用的调度资源组标识

S_res_group_235454102432001_1579085295030
TransformationRulesarray<object>

同步对象转换规则定义列表。

object

单个同步对象转换规则定义,每个元素为一条转换规则定义。

RuleActionTypestring

动作类型,可选的枚举值:

  • DefinePrimaryKey(定义主键)
  • Rename(重命名)
  • AddColumn(增加列)
  • HandleDml(DML 处理)
  • DefineIncrementalCondition(定义增量条件)
  • DefineCycleScheduleSettings(定义周期调度设置)
  • DefineRuntimeSettings(定义高级配置参数)
  • DefinePartitionKey(定义分区列)
Rename
RuleExpressionstring

规则表达式,json string 格式。

重命名规则(Rename)示例: {"expression":"${srcDatasourceName}_${srcDatabaseName}_0922","variables":[{"variableName":"srcDatabaseName","variableRules":[{"from":"fromdb","to":"todb"}]}]}

  • expression:为重命名转换规则表达式,表达式内支持变量包括:${srcDatasourceName}(源端数据源名)、${srcDatabaseName}(源端库名)、${srcTableName}(源端表名)。
  • variables:为重命名转换规则表达式中各变量的生成规则,参数默认值为对应含义在源端的原始值,可按需定义一组字符串替换规则对原始值进行改写。variableName:变量名,不含${}。variableRules:变量生成规则组,按顺序串行执行替换,from 原始字符串;to 替换后字符串。

在目标端增加指定列并赋值规则(AddColumn)示例: {"columns":[{"columnName":"my_add_column","columnValueType":"Constant","columnValue":"123"}]}

  • 如不指定,默认规则为不加列不复制。
  • columnName:附加的列名称。
  • columnValueType:附加的列取值类型,包括 Constant(常量)、Variable(变量)。
  • columnValue:附加的列取值。当 columnValueType=Constant 时,value 为自定义常量,String 类型。当 columnValueType=Variable 时,value 为内置变量。内置变量可选值包括:EXECUTE_TIME(执行时间,Long 类型)、DB_NAME_SRC(源端数据库名称,String 类型)、DATASOURCE_NAME_SRC(源端数据源名称,String 类型)、TABLE_NAME_SRC(源端表名,String 类型)、DB_NAME_DEST(目标端数据库名称,String 类型)、DATASOURCE_NAME_DEST(目标端数据源名称,String 类型)、TABLE_NAME_DEST(目标端表名,String 类型)、DB_NAME_SRC_TRANSED(转换后的数据库名称,String 类型)。

指定目标端表的主键列列名(DefinePrimaryKey)示例: {"columns":["ukcolumn1","ukcolumn2"]}

  • 如不指定默认使用源端主键列。
  • 当目标端为已有表:数据集成系统不会修改目标端表结构,如果指定的主键列不在目标端的列集合中,任务启动会报错提示。
  • 当目标端为自动建表:数据集成系统会自动创建目标端表结构,表结构包含定义的主键列。当指定的主键列不在目标端的列集合中时,任务启动会报错提示。

DML 处理规则(HandleDml)示例: {"dmlPolicies":[{"dmlType":"Delete","dmlAction":"Filter","filterCondition":"id > 1"}]}

  • 如不指定,默认规则为 Insert、Update、Delete 均为 Normal
  • dmlType:DML 操作类型,Insert(插入)、Update(更新)、Delete(删除)
  • dmlAction:DML 处理策略,Normal(正常处理)、Ignore(忽略)、Filter(有条件的正常处理,当 dmlType=Update/Delete 时使用)、LogicalDelete(逻辑删除)
  • filterCondition:DML 过滤条件,当 dmlAction=Filter 时使用
{"expression":"${srcDatasoureName}_${srcDatabaseName}"}
RuleNamestring

规则名称,当动作类型和动作作用的目标类型相同时,规则名称需保证唯一性。

rename_rule_1
RuleTargetTypestring

动作作用的目标类型,可选的枚举值:

  • Table(表)
  • Schema(schema)
Table
TableMappingsarray<object>

同步对象转换映射列表,列表中每个元素描述了一组源端同步对象选择规则列表和在该组同步对象上应用的同步对象转换规则列表。

object

每条规则代表选择需要同步的一个表。

SourceObjectSelectionRulesarray<object>

每条规则可选择待同步源端对象的集合,多条规则组成选一个表。

object

每条规则可选择待同步源端对象的不同对象类型,如选择源端数据库、源端数据表。

Actionstring

选择动作,取值范围:Include/Exclude

Include
Expressionstring

表达式。

mysql_table_1
ExpressionTypestring

表达式类型,取值范围:Exact/Regex

Exact
ObjectTypestring

对象类型,可选的枚举值:

  • Table(表)
  • Database(数据库)
Table
TransformationRulesarray<object>

同步对象转换规则定义列表,列表中每个元素为一条转换规则定义。

object

源端对象上应用的转换规则。

RuleNamestring

规则名称,在一种动作类型+动作作用的目标类型下规则名称唯一。

rename_rule_1
RuleActionTypestring

动作类型,可选的枚举值:

  • DefinePrimaryKey(定义主键)
  • Rename(重命名)
  • AddColumn(增加列)
  • HandleDml(DML 处理)
  • DefineIncrementalCondition(定义增量条件)
  • DefineCycleScheduleSettings(定义周期调度设置)
  • DefineRuntimeSettings(定义高级配置参数)
  • DefinePartitionKey(定义分区列)
Rename
RuleTargetTypestring

动作作用的目标类型,可选的枚举值:

  • Table(表)
  • Schema(schema)
Table
JobSettingsobject

同步任务维度的设置,含 DDL 处理策略、源端和目标端列数据类型映射策略、任务运行时参数等。

ChannelSettingsstring

通道相关任务设置,Json String 形式。

{"structInfo":"MANAGED","storageType":"TEXTFILE","writeMode":"APPEND","partitionColumns":[{"columnName":"pt","columnType":"STRING","comment":""}],"fieldDelimiter":""}
ColumnDataTypeSettingsarray<object>

列类型映射数组。

object

单条列类型映射。

DestinationDataTypestring

目标端类型。

text
SourceDataTypestring

源端类型。

bigint
CycleScheduleSettingsobject

周期调度设置。

CycleMigrationTypestring

需要周期调度的同步类型。取值范围:

  • Full:全量
  • OfflineIncremental:离线增量
Full
ScheduleParametersstring

调度参数。

bizdate=$bizdate
DdlHandlingSettingsarray<object>

DDL 处理设置数组。

object

单条 DDL 处理设置。

Actionstring

处理动作,可选的枚举值:

  • Ignore(忽略)
  • Critical(报错)
  • Normal(正常处理)
Critical
Typestring

DDL 类型,可选的枚举值:

  • RenameColumn(重命名列)
  • ModifyColumn(重命名列)
  • CreateTable(重命名列)
  • TruncateTable(清空表)
  • DropTable(删除表)
  • DropColumn(删除列)
  • AddColumn(新增列)
AddColumn
RuntimeSettingsarray<object>

运行时设置。

object
Namestring

设置名称,可选的枚举值:

  • runtime.offline.speed.limit.mb(离线批量任务限流大小,当 runtime.offline.speed.limit.enable=true 时有效)
  • runtime.offline.speed.limit.enable(离线批量任务是否开启限流)
  • dst.offline.connection.max(离线批量任务写端最大连接数)
  • runtime.offline.concurrent(离线批量同步任务并发度)
  • dst.realtime.connection.max(实时任务写端最大连接数)
  • runtime.enable.auto.create.schema(是否自动在目标端创建 schema)
  • src.offline.datasource.max.connection(离线批量任务源端最大连接数)
  • runtime.realtime.concurrent(实时任务并发度)
runtime.offline.concurrent
Valuestring

设置取值。

1

返回参数

名称类型描述示例值
object

Schema of Response

DIJobIdlong

数据集成任务 ID。

11792
RequestIdstring

请求的 ID。用于定位日志,排查问题。

4F6AB6B3-41FB-5EBB-AFB2-0C98D49DA2BB

示例

正常返回示例

JSON格式

{
  "DIJobId": 11792,
  "RequestId": "4F6AB6B3-41FB-5EBB-AFB2-0C98D49DA2BB"
}

错误码

访问错误中心查看更多错误码。