更新时间:2026-01-30 GMT+08:00

指定集群创建作业

功能介绍

指定集群创建作业接口。

调用方法

请参见如何调用API

URI

POST /v1.1/{project_id}/clusters/{cluster_id}/cdm/job

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方法请参见项目ID和账号ID

cluster_id

String

集群ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

jobs

Array of Job objects

作业列表,请参见jobs数据结构说明。

表4 Job

参数

是否必选

参数类型

描述

job_type

String

作业类型:

  • NORMAL_JOB:表/文件迁移。

  • BATCH_JOB:整库迁移。

from-connector-name

String

源端连接类型,对应的连接参数如下:

  • generic-jdbc-connector:关系数据库连接。

  • obs-connector:OBS连接。

  • hdfs-connector:HDFS连接。

  • hbase-connector:HBase连接、CloudTable连接。

  • hive-connector:Hive连接。

  • ftp-connector/sftp-connector:FTP/SFTP连接。

  • mongodb-connector:MongoDB连接。

  • redis-connector:Redis/DCS连接。

  • kafka-connector:Kafka连接。

  • dis-connector:DIS连接。

  • elasticsearch-connector:Elasticsearch/云搜索服务连接。

  • dli-connector:DLI连接。

  • http-connector:HTTP/HTTPS连接,该连接暂无连接参数。

  • dms-kafka-connector:DMSKafka连接。

to-config-values

ConfigValues object

目的连接参数配置。根据不同目的端有不同的参数配置,具体可参考目的端作业参数说明下相应的目的端参数配置。

to-link-name

String

目的端连接名称,即为通过“创建连接”接口创建的连接对应的连接名。

driver-config-values

ConfigValues object

作业任务参数配置。例如配置作业失败重试、抽取并发数,具体可参考作业任务参数说明

from-config-values

ConfigValues object

源连接参数配置。根据不同源端有不同的参数配置,具体可参考源端作业参数说明下相应的源端参数配置。

to-connector-name

String

目的端连接类型,对应的连接参数如下:

  • generic-jdbc-connector:关系数据库连接。

  • obs-connector:OBS连接。

  • hdfs-connector:HDFS连接。

  • hbase-connector:HBase连接、CloudTable连接。

  • hive-connector:Hive连接。

  • ftp-connector/sftp-connector:FTP/SFTP连接。

  • mongodb-connector:MongoDB连接。

  • redis-connector:Redis/DCS连接。

  • kafka-connector:Kafka连接。

  • dis-connector:DIS连接。

  • elasticsearch-connector:Elasticsearch/云搜索服务连接。

  • dli-connector:DLI连接。

  • http-connector:HTTP/HTTPS连接,该连接暂无连接参数。

  • dms-kafka-connector:DMSKafka连接。

name

String

作业名称,长度在1到240个字符之间。

from-link-name

String

源连接名称,即为通过“创建连接”接口创建的连接对应的连接名。

creation-user

String

创建作业的用户。由系统生成,用户无需填写。

creation-date

Long

作业创建的时间,单位:毫秒。由系统生成,用户无需填写。

update-date

Long

作业最后更新的时间,单位:毫秒。由系统生成,用户无需填写。

is_incre_job

Boolean

是否是增量作业。已废弃。

flag

Integer

是否是定时作业标记,如果是定时作业则为1,否则为0。由系统根据定时任务配置生成,用户无需填写。

files_read

Integer

已读文件数。由系统生成,用户无需填写。

update-user

String

最后更新作业的用户。由系统生成,用户无需填写。

external_id

String

具体执行的作业id,如果是本地作业,则一般为"job_local1202051771_0002"形式,如果是DLI作业,则为DLI作业ID,比如"12345"。由系统生成,用户无需填写。

type

String

与job_type一致,作业类型:

  • NORMAL_JOB:表/文件迁移。

  • BATCH_JOB:整库迁移。

execute_start_date

Long

最近一次执行任务开始时间,单位:毫秒。由系统生成,用户无需填写。

delete_rows

Integer

增量作业删除行数,已废弃。

enabled

Boolean

是否激活连接。由系统生成,用户无需填写。

bytes_written

Long

作业写入的字节。由系统生成,用户无需填写。

id

Integer

作业ID。由系统生成,用户无需填写。

is_use_sql

Boolean

用户是否使用sql。由系统根据源端抽取是否使用sql语句生成,用户无需填写。

update_rows

Integer

增量作业更新行数,已废弃。

group_name

String

组名。

bytes_read

Long

作业读取的字节。由系统生成,用户无需填写。

execute_update_date

Long

最近一次执行任务更新时间,单位:毫秒。由系统生成,用户无需填写。

write_rows

Integer

增量作业写入行数,已废弃。

rows_written

Integer

作业写入的行数。由系统生成,用户无需填写。

rows_read

Long

作业读取的行数。由系统生成,用户无需填写。

files_written

Integer

写入文件数。由系统生成,用户无需填写。

is_incrementing

Boolean

是否是增量作业,同is_incre_job,已废弃。

execute_create_date

Long

最近一次执行任务创建时间,单位:毫秒。由系统生成,用户无需填写。

status

String

作业最后的执行状态:

  • BOOTING:启动中。

  • RUNNING:运行中。

  • SUCCEEDED:成功。

  • FAILED:失败。

  • NEW:未被执行。

表5 ConfigValues

参数

是否必选

参数类型

描述

configs

Array of configs objects

源连接参数、目的连接参数和作业任务参数,它们的配置数据结构相同,其中“inputs”里的参数不一样,详细请参见configs数据结构说明。

extended-configs

extended-configs object

扩展配置,请参见extended-configs参数说明。扩展配置暂不对外开放,用户无需填写。

表6 configs

参数

是否必选

参数类型

描述

inputs

Array of Input objects

输入参数列表,列表中的每个参数为“name,value”结构,请参考inputs数据结构参数说明。在“from-config-values”数据结构中,不同的源连接类型有不同的“inputs”参数列表,请参见源端作业参数说明下的章节。在“to-config-values”数据结构中,不同的目的连接类型有不同的“inputs”参数列表,请参见目的端作业参数说明下面的子章节。在“driver-config-values”数据结构中,“inputs”具体参数请参见作业任务参数说明。

name

String

配置名称:源端作业的配置名称为“fromJobConfig”。目的端作业的配置名称为“toJobConfig”,连接的配置名称固定为“linkConfig”。

id

Integer

配置ID,由系统生成,用户无需填写。

type

String

配置类型,由系统生成,用户无需填写。值为LINK或者JOB,如果是连接管理API,则为LINK;如果是作业管理API,则为JOB。

表7 Input

参数

是否必选

参数类型

描述

name

String

参数名:

  • 如果是连接管理API,则以“linkConfig.”开头,对于不同连接类型有不同的参数,具体可参见连接参数说明下相应连接的参数说明。

  • 如果是作业管理API,对于源端连接参数,则以“fromJobConfig.”开头,具体可参见源端作业参数说明下相应的源端参数说明;对于目的端连接参数,则以“toJobConfig.”开头,具体可参见目的端作业参数说明下相应的目的端参数说明;对于作业任务参数,请参见作业任务参数说明下相应的任务参数说明。

value

Object

参数值,参数名对应的值,必须填写为字符串。

type

String

值类型,如STRING、INTEGER,由系统设定,用户无需填写。

表8 extended-configs

参数

是否必选

参数类型

描述

name

String

扩展配置名称,暂不对外开放,用户无需填写。

value

String

扩展配置值,暂不对外开放,用户无需填写。

响应参数

状态码:200

表9 响应Body参数

参数

参数类型

描述

name

String

作业名称。

validation-result

Array of JobValidationResult objects

校验结果:

  • 如果修改失败,返回失败原因。

  • 如果修改成功,返回空列表。

表10 JobValidationResult

参数

参数类型

描述

message

String

错误描述。

status

String

错误级别,如:ERROR、WARNING。

状态码:400

表11 响应Body参数

参数

参数类型

描述

code

String

返回编码。

errCode

String

错误码。

message

String

报错信息。

externalMessage

String

附加信息。

请求示例

创建一个源端为Elasticsearch数据连接,目的端为DIS数据连接,作业名为es_css的数据迁移作业。

POST /v1.1/1551c7f6c808414d8e9f3c514a170f2e/clusters/6ec9a0a4-76be-4262-8697-e7af1fac7920/cdm/job

{
  "jobs" : [ {
    "job_type" : "NORMAL_JOB",
    "from-connector-name" : "elasticsearch-connector",
    "to-config-values" : {
      "configs" : [ {
        "inputs" : [ {
          "name" : "toJobConfig.streamName",
          "value" : "dis-lkGm"
        }, {
          "name" : "toJobConfig.separator",
          "value" : "|"
        }, {
          "name" : "toJobConfig.columnList",
          "value" : "1&2&3"
        } ],
        "name" : "toJobConfig"
      } ]
    },
    "to-link-name" : "dis",
    "driver-config-values" : {
      "configs" : [ {
        "inputs" : [ {
          "name" : "throttlingConfig.numExtractors",
          "value" : "1"
        }, {
          "name" : "throttlingConfig.submitToCluster",
          "value" : "false"
        }, {
          "name" : "throttlingConfig.numLoaders",
          "value" : "1"
        }, {
          "name" : "throttlingConfig.recordDirtyData",
          "value" : "false"
        } ],
        "name" : "throttlingConfig"
      }, {
        "inputs" : [ ],
        "name" : "jarConfig"
      }, {
        "inputs" : [ {
          "name" : "schedulerConfig.isSchedulerJob",
          "value" : "false"
        }, {
          "name" : "schedulerConfig.disposableType",
          "value" : "NONE"
        } ],
        "name" : "schedulerConfig"
      }, {
        "inputs" : [ ],
        "name" : "transformConfig"
      }, {
        "inputs" : [ {
          "name" : "retryJobConfig.retryJobType",
          "value" : "NONE"
        } ],
        "name" : "retryJobConfig"
      } ]
    },
    "from-config-values" : {
      "configs" : [ {
        "inputs" : [ {
          "name" : "fromJobConfig.index",
          "value" : "52est"
        }, {
          "name" : "fromJobConfig.type",
          "value" : "est_array"
        }, {
          "name" : "fromJobConfig.columnList",
          "value" : "array_f1_int:long&array_f2_text:string&array_f3_object:nested"
        }, {
          "name" : "fromJobConfig.splitNestedField",
          "value" : "false"
        } ],
        "name" : "fromJobConfig"
      } ]
    },
    "to-connector-name" : "dis-connector",
    "name" : "es_css",
    "from-link-name" : "css"
  } ]
}

响应示例

状态码:200

OK。

{
  "name" : "mysql2hive"
}

状态码:400

请求报错。

{
  "code" : "Cdm.0104",
  "errCode" : "Cdm.0104",
  "message" : "Job name already exist or created by other.",
  "ternalMessage" : "Job name already exist or created by other."
}

状态码

状态码

描述

200

OK。

400

请求报错。

错误码

请参见错误码