更新时间:2025-07-08 GMT+08:00
分享

启动作业

功能介绍

启动作业。

URI

POST /v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs

表1 路径参数

参数

是否必选

参数类型

描述

eihealth_project_id

String

参数解释

平台空间ID,您可以在平台单击所需的空间名称,进入空间设置页面查看。

约束限制

不涉及

取值范围

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值

不涉及

project_id

String

参数解释

项目ID,您可以从获取项目ID中获取。

约束限制

不涉及

取值范围

仅支持字母、数字、中划线和下划线,长度为[1-128]个字符。

默认取值

不涉及

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释

用户Token。

Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限,获取Token接口响应消息头中X-Subject-Token的值即为Token。

约束限制

不涉及

取值范围

长度为[1-32768]个字符。

默认取值

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

参数解释

作业的名称。

约束限制

取值范围:[1,63],允许大小写字母、数字、以及特殊字符中划线(-)。

取值范围

长度[1,63],以小写字母、大写字母或数字开头,允许出现中划线。

默认取值

不涉及

description

String

参数解释

作业的描述。

约束限制

不涉及

取值范围

长度最大为255个字符。

默认取值

不涉及

labels

Array of strings

参数解释

作业标签。

约束限制

单个标签最大长度32字符,支持中文、字母、数字、空格、下划线和中划线,且不能以空格开头或者结尾。最多设置5个标签。

取值范围

不涉及

默认取值

不涉及

priority

Integer

参数解释

作业的优先级。

约束限制

取值范围[0,9],0最低,默认数值0。

取值范围

长度[0,9],0最低,默认数值0。

默认取值

0

timeout

Integer

参数解释

作业执行超时时长。

约束限制

取值范围: [1,144000],单位:分钟,默认数值1440。

取值范围

长度[1,144000],单位:分钟,默认数值1440。

默认取值

1440

output_dir

String

参数解释

作业结果存储目录,默认为空,表示使用自身项目桶的根目录。

约束限制

不涉及

取值范围

长度[0,128]。

默认取值

不涉及

tool_id

String

参数解释

作业依赖的组件ID,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊ID:{流程名称}::{流程版本}::{源项目名称};正常ID:流程ID。

约束限制

取值范围[1,135],支持大小写字母和数字。

取值范围

长度[1,135],支持大小写字母和数字。

默认取值

不涉及

tool_type

String

参数解释

作业依赖的组件类型,支持app和workflow。

约束限制

取值范围:app和workflow。

取值范围

app和workflow。

默认取值

不涉及

tasks

Array of JobTaskDto objects

参数解释

作业子任务列表。

约束限制

最多支持设置64个子任务。

取值范围

不涉及

默认取值

不涉及

io_acc_id

String

参数解释

作业使用的IO加速实例ID,不填表示不使用。

约束限制

不涉及

取值范围

长度[0,128],支持字母、数字、下划线和中划线。

默认取值

不涉及

io_acc_expected_usage

Integer

参数解释

作业使用的SFS-Turbo实例预期占用存储量,单位G,用于投递作业时评估当前加速实例余量是否充足。

约束限制

不涉及

取值范围

长度[0,327680]。

默认取值

不涉及

node_labels

Array of strings

参数解释

节点标签。

约束限制

取值范围[0,1],单个标签最大长度63字符。

取值范围

不涉及

默认取值

不涉及

表4 JobTaskDto

参数

是否必选

参数类型

描述

task_name

String

参数解释

子任务实际名称。

约束限制

不涉及

取值范围

长度[1,32],只能以大小写字母开头,由大小写字母、数字、中划线(-)、下划线(_)组成,以大小写字符或数字结尾。

默认取值

不涉及

inputs

Array of TaskParameterDto objects

参数解释

任务的输入参数信息。

约束限制

最多支持128个参数。

取值范围

不涉及

默认取值

不涉及

outputs

Array of TaskParameterDto objects

参数解释

任务的输出参数信息。

约束限制

最多支持128个参数。

取值范围

不涉及

默认取值

不涉及

resources

TaskResourceDto object

参数解释

应用申请资源。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

output_dir

String

参数解释

子任务结果存储目录,默认为空。

约束限制

不涉及

取值范围

长度[0,128]。

默认取值

不涉及

io_acc_type

String

参数解释

子任务使用的IO加速实例类型,不填表示不使用。

约束限制

不涉及

取值范围

长度[0,128],支持SFS或EVS。

默认取值

不涉及

表5 TaskParameterDto

参数

是否必选

参数类型

描述

name

String

参数解释

子任务的参数名称。

约束限制

不涉及

取值范围

长度为[1,32],以小写字母开头,允许出现中划线(-)、小写字母和数字,且必须以小写字母或数字结尾。需要和已有应用的参数名称一致。

默认取值

不涉及

source

String

参数解释

子任务的参数类型。

约束限制

不涉及

取值范围

  • MANUAL:手动填写参数。

  • DATABASE:数据库来源参数。

默认取值

MANUAL

values

Array of strings

参数解释

子任务的参数数值。

约束限制

每个参数取值范围[0,2048],最多支持设置128个参数。

取值范围

不涉及

默认取值

不涉及

表6 TaskResourceDto

参数

是否必选

参数类型

描述

cpu

String

参数解释

cpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

cpu_type

String

参数解释

cpu架构类型。

约束限制

不涉及

取值范围

取值范围,支持X86|ARM。

默认取值

X86。

memory

String

参数解释

内存申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu_type

String

参数解释

gpu架构类型。

约束限制

不涉及

取值范围

gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu

String

参数解释

gpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

响应参数

状态码:201

表7 响应Body参数

参数

参数类型

描述

id

String

参数解释

作业ID。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

max_platform_flavor

TaskResourceDto object

参数解释

平台节点最大规格。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

app_infos

Array of AppFilterDto objects

参数解释

不满足节点规格约束的应用列表信息。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

job_info

JobFilterDto object

参数解释

不满足节点标签约束的作业信息。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表8 AppFilterDto

参数

参数类型

描述

app_id

String

参数解释

应用ID。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

app_name

String

参数解释

应用名称。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

app_version

String

参数解释

应用版本。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

app_resource

TaskResourceDto object

参数解释

应用资源。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

app_node_labels

Array of strings

参数解释

计算节点标签。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表9 TaskResourceDto

参数

参数类型

描述

cpu

String

参数解释

cpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

cpu_type

String

参数解释

cpu架构类型。

约束限制

不涉及

取值范围

取值范围,支持X86|ARM。

默认取值

X86。

memory

String

参数解释

内存申请使用量。

约束限制

不涉及

取值范围

取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu_type

String

参数解释

gpu架构类型。

约束限制

不涉及

取值范围

gpu架构类型,支持GPU|Snt9。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

gpu

String

参数解释

gpu申请使用量。

约束限制

不涉及

取值范围

取值范围[0-16],仅支持整数。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用。

默认取值

不涉及

表10 JobFilterDto

参数

参数类型

描述

job_name

String

参数解释

作业名称。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

job_node_labels

Array of strings

参数解释

计算节点标签。

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

请求示例

启动作业,其中作业的名称为demo-job,作业使用IO加速类型为SFS。

https://{endpoint}/v1/{project_id}/eihealth-projects/{eihealth_project_id}/jobs

{
  "name" : "demo-job",
  "description" : "description",
  "labels" : [ "labelA", "labelB" ],
  "priority" : 0,
  "timeout" : 1440,
  "output_dir" : "/job",
  "tool_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
  "tool_type" : "workflow",
  "tasks" : [ {
    "task_name" : "app1-1",
    "inputs" : [ {
      "name" : "dir-parameter",
      "values" : [ "test-project:/300M_NA12878_clean_1.fastq" ]
    } ],
    "outputs" : [ {
      "name" : "dir-parameter",
      "values" : [ "test-project:/output-dir/" ]
    } ],
    "io_acc_type" : "SFS",
    "resources" : {
      "cpu_type" : "X86",
      "cpu" : "1C",
      "memory" : "1G",
      "gpu_type" : "GPU",
      "gpu" : 0
    }
  } ]
}

响应示例

状态码:201

CREATED

{
  "id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
  "app_infos" : [ {
    "app_id" : "baabcb56-5bb6-11eb-8a0d-fa163e3ddba1",
    "app_name" : "demo-app",
    "app_version" : "1.0.0",
    "app_node_labels" : [ "health.node" ]
  } ],
  "job_info" : {
    "job_name" : "demo-job",
    "job_node_labels" : [ "health.node" ]
  }
}

状态码

状态码

描述

201

CREATED

错误码

请参见错误码

相关文档