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

指定集群创建作业

功能介绍

指定集群创建作业接口。

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目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:整库迁移。

  • SCENARIO_JOB:场景迁移。

枚举值:

  • NORMAL_JOB

  • BATCH_JOB

  • SCENARIO_JOB

from-connector-name

String

源端连接类型

to-config-values

ConfigValues object

目的连接参数配置。

to-link-name

String

目的端连接名称

driver-config-values

ConfigValues object

作业任务参数配置。

from-config-values

ConfigValues object

源连接参数配置。

to-connector-name

String

目的端连接类型

name

String

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

最小长度:1

最大长度:240

from-link-name

String

源连接名称

creation-user

String

创建的用户。

creation-date

Long

作业创建的时间,单位:毫秒。

update-date

Long

作业最后更新的时间,单位:毫秒。

is_incre_job

Boolean

是否增量

flag

Integer

标记

files_read

Integer

已读文件数

update-user

String

作业最后更新的用户。

external_id

String

外部ID。

type

String

作业类型

execute_start_date

Long

执行_开始_日期。

delete_rows

Integer

删除行数

enabled

Boolean

是否激活连接

bytes_written

Long

写入字节

id

Integer

作业ID

is_use_sql

Boolean

用户是否使用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

是否增量

execute_create_date

Long

执行_创建_日期

status

String

作业最后的执行状态:

  • BOOTING:启动中。

  • RUNNING:运行中。

  • SUCCEEDED:成功。

  • FAILED:失败。

  • NEW:未被执行。

表5 ConfigValues

参数

是否必选

参数类型

描述

configs

Array of configs objects

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

表6 configs

参数

是否必选

参数类型

描述

inputs

Array of Input objects

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

name

String

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

id

Integer

配置ID

type

String

配置类型

表7 Input

参数

是否必选

参数类型

描述

name

String

参数名

values

String

参数值

type

String

值类型

响应参数

状态码: 200

表8 响应Body参数

参数

参数类型

描述

name

String

作业名称。

validation-result

Array of JobValidationResult objects

校验结果:

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

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

表9 JobValidationResult

参数

参数类型

描述

message

String

错误描述

status

String

ERROR,WARNING

枚举值:

  • ERROR

  • WARNING

状态码: 400

表10 响应Body参数

参数

参数类型

描述

code

String

返回编码

errCode

String

错误码

message

String

报错信息

externalMessage

String

附加信息

请求示例

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

请求报错

错误码

请参见错误码