调用GenerateDISyncTaskConfigForCreating接口,异步生成创建数据集成同步任务的异步线程ID。后续您需要通过该ID,调用QueryDISyncTaskConfigProcessResult接口获取异步生成创建数据集成同步任务需要的参数,通过该参数创建数据集成同步任务。
DataWorks目前仅支持直接使用CreateDISyncTask接口创建数据集成离线同步任务,而数据集成实时同步任务和解决方案同步任务则需要先调用GenerateDISyncTaskConfigForCreating和QueryDISyncTaskConfigProcessResult接口,获取异步生成创建数据集成同步任务需要的参数,再将该参数作为CreateDISyncTask接口的入参,使用CreateDISyncTask接口创建相应的实时同步任务和解决方案同步任务。
仅支持使用异步方式创建数据集成实时同步任务和解决方案同步任务。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | GenerateDISyncTaskConfigForCreating |
要执行的操作。 |
ProjectId | Long | 是 | 10000 |
DataWorks工作空间的ID。您可以登录DataWorks控制台,进入工作空间配置页面获取工作空间ID。 该参数用来确定本次API调用操作使用的DataWorks工作空间。 |
TaskType | String | 是 | DI_REALTIME |
使用异步方式创建数据集成同步任务的任务类型。取值如下:
仅支持使用异步方式生成数据集成实时同步任务和解决方案同步任务。 |
RegionId | String | 是 | cn-zhangjiakou |
地域信息,通常为服务所在的地域。例如,华东2(上海)为cn-shanghai,华北3(张家口)为cn-zhangjiakou。您无需填写RegionId,会根据调用的Endpoint自动解析。 |
TaskParam | String | 是 | { "type": "realtime", "version": "1.0", "setting": { "resourceGroup": "S_res_group_280749521950784_1623033752022", "scheduleResgroupId": 30003913, "name": "openapi_realtime_solution_0813_1739", "taskType": "oneclick_to_odps" }, "steps": [ { "stepType": "mysql", "parameter": { "connection": [ { "datasourceType": "mysql", "datasource": "mysql_pub", "table": [ "xyx" ] } ] }, "name": "Reader", "category": "reader" }, { "stepType": "odps", "parameter": { "datasource": "odps_first" }, "name": "Writer", "category": "writer" } ] } |
数据集成同步任务的脚本。 目前支持创建的同步任务类型如下:
SelectedTables用于多库模式选择同步表,Tables用于单库模式选择同步表。
同步MySQL数据至MaxCompute,示例语句如下。 { "type": "realtime", "version": "1.0", "setting": { "resourceGroup": "S_res_group_280749521950784_1623033752022", "taskType": "oneclick_to_odps" }, "steps": { "stepType": "mysql", "parameter": { "connection": [ { "datasourceType": "mysql", "datasource": "mysql_pub1", "selectedTables": [ { "dbName": "mysql_db", "schema": [ { "tableInfos": [ { "table": "molin_di_test_in_pk_v4" } } ] } ] } ] }, "name": "Reader", "category": "reader" }, { "stepType": "odps", "parameter": { "datasource": "odps_first" }, "name": "Writer", "category": "writer" } ] } 同步MySQL数据至Kafka,示例语句如下。 { "type": "realtime", "version": "1.0", "setting": { "resourceGroup": "S_res_group_280749521950784_1623033752022", "taskType": "oneclick_to_kafka" }, "steps": { "stepType": "mysql", "parameter": { "connection": [ { "datasourceType": "mysql", "datasource": "pkset_test", "selectedTables": [ { "dbName": "mysql_db", "schema": [ { "tableInfos": [ { "table": "molin_di_test_in_pk_v4" } } ] } ] } ] }, "name": "Reader", "category": "reader" }, { "stepType": "kafka", "parameter": { "datasource": "azn_kafka" }, "name": "Writer", "category": "writer" } ] } 同步MySQL数据至Hologres,示例语句如下。 { "type": "realtime", "version": "1.0", "setting": { "resourceGroup": "S_res_group_280749521950784_1623033752022", "taskType": "oneclick_to_holo" }, "steps": { "stepType": "mysql", "parameter": { "connection": [ { "datasourceType": "mysql", "datasource": "mysql_pub", "selectedTables": [ { "dbName": "mysql_db", "schema": [ { "tableInfos": [ { "table": "molin_di_test_in2_pk_v3" } } ] } ] } ] }, "name": "Reader", "category": "reader" }, { "stepType": "holo", "parameter": { "datasource": "holo" }, "name": "Writer", "category": "writer" } ] } |
ClientToken | String | 否 | ABFUOEUOTRTRJKE |
幂等参数。用于避免多次调用导致操作重复。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Success | Boolean | true |
请求是否成功。取值如下:
|
RequestId | String | 0bc1411515937635973**** |
请求ID。用于定位日志,排查问题。 |
Data | Object |
异步线程ID的生成结果。 |
|
Status | String | true |
生成异步线程ID的结果状态。取值如下:
|
ProcessId | Long | 10 |
异步线程ID。您需要通过该ID,调用QueryDISyncTaskConfigProcessResult接口获取异步生成创建数据集成同步任务需要的参数,使用该参数创建数据集成同步任务。 |
Message | String | XXX is invalid. |
异步线程ID生成失败的原因描述。 如果成功生成异步线程ID,则该参数的返回值为空。 |
示例
请求示例
http(s)://[Endpoint]/?Action=GenerateDISyncTaskConfigForCreating
&ProjectId=10000
&TaskType=DI_REALTIME
&TaskParam={ "type": "realtime", "version": "1.0", "setting": { "resourceGroup": "S_res_group_280749521950784_1623033752022", "scheduleResgroupId": 30003913, "name": "openapi_realtime_solution_0813_1739", "taskType": "oneclick_to_odps" }, "steps": [ { "stepType": "mysql", "parameter": { "connection": [ { "datasourceType": "mysql", "datasource": "mysql_pub", "table": [ "xyx" ] } ] }, "name": "Reader", "category": "reader" }, { "stepType": "odps", "parameter": { "datasource": "odps_first" }, "name": "Writer", "category": "writer" } ] }
&ClientToken=ABFUOEUOTRTRJKE
&公共请求参数
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<GenerateDISyncTaskConfigForCreatingResponse>
<Success>true</Success>
<RequestId>0bc1411515937635973****</RequestId>
<Data>
<Status>true</Status>
<ProcessId>10</ProcessId>
<Message>XXX is invalid.</Message>
</Data>
</GenerateDISyncTaskConfigForCreatingResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Success" : true,
"RequestId" : "0bc1411515937635973****",
"Data" : {
"Status" : true,
"ProcessId" : 10,
"Message" : "XXX is invalid."
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | Invalid.DI.Parameter | The parameter is invalid. | 参数错误 |
400 | Invalid.DI.Parameter.File.Existed | The file name already exists. | 参数不合法,文件名已存在 |
403 | Forbidden.DI.NoPrivilege | No access. | 没有权限访问 |
500 | InternalError.DI.Parameter | A DI internal error occurred. | 数据集成内部业务错误 |
访问错误中心查看更多错误码。