更新时间:2023-11-02 GMT+08:00
分享

创建分析作业

创建分析作业有以下几种不同的方式,您可以任选其中一种方式。

如果在创建应用时打开了“并发”开关,可以设置多个参数值,批量执行作业。

可通过在系统资源 > 计算资源页面将计算节点的标签设置为copy-in,实现作业运行于指定的计算节点中。对于“不可调度”状态的计算节点,将无法在此节点运行作业。

通过“新建流程”时创建

  1. “工具”页面,单击“新建流程”,填写流程信息。请参考新建流程操作。
  2. 流程搭建完成后,单击“新建作业”
    图1 新建作业
  3. 在新建作业弹窗中单击“确定”
    图2 新建作业
  4. 在弹出的作业设置页面,填写作业信息。“作业名称”“标签”、和“描述”,选择需要执行的流程,设置“输出路径”“优先级”“计算节点标签”“超时时间”“加速类型”。设置完成后单击“确定”
    • 基本信息:包含作业名称、标签、描述。
    • 流程名称:显示已创建的流程名称,不可编辑。
    • 输出路径:存放输出结果的路径,格式以/开头。例如项目中的output文件夹,输出路径可设置为/output。不填写路径时,默认以“作业名-UUID”格式生成输出路径。
    • 优先级:运行优先级,分为0~9级,优先级高的作业会被优先执行。默认值为0。

      如果当前投递的IO加速的作业,超过sfs总的作业配额数, 那么超出部分的作业会按照投递时间顺序,从最新投递的向前执行,不会按照优先级进行运行。

    • 计算节点标签:作业会调度到含有相应标签的计算节点上。

      当应用也配置了标签,如果应用和作业的计算节点标签在同一计算节点上,则应用调度至该计算节点上;应用和它的作业,不管节点标签是否一致,都会被调度到应用的节点标签所对应的计算节点上。

      如果设置了不存在的计算节点标签,作业会进入等待,直至配置了相应的标签。

    • 超时时间:作业运行时间超过设置时间时,认为超时,默认1440分钟,最大可设置为144000分钟,即作业运行至多100天。
    • 加速类型:
      加速效率:IO加速>本地盘加速>无
      • 无:作业运行于OBS中,不使用加速。
      • IO加速:IO加速使用弹性文件服务(SFS)提供高性能的数据读写,作业运行时,会将非最终结果的数据存储在SFS中用以提高任务运行效率,作业执行完成后会清理释放SFS空间。对于涉及频繁读写场景的任务建议开启IO加速,开启前需要先购买性能加速
      • 本地盘加速:使用计算节点的本地盘进行加速。使用本地盘加速时,需保证购买的计算节点带有“数据盘”。OBS桶中的数据不支持本地盘加速,使用OBS桶中数据用于本地盘加速,可能会导致作业运行失败。
        • 使用OBS桶中的数据投递作业时,当数据大于40G时作业会投递失败。
        • 使用OBS桶中的数据投递作业时,作业将数据copy至云硬盘后,数据变大了4096byte,导致作业投递失败。
        图3 “OBS”标签代表数据引用来源为OBS桶
    图4 作业设置

  5. (可选)配置task级别加速。

    在作业详情页面,单击task下面的,在“高级参数”下面设置加速类型。

    如果作业加速类型选择“无”,task加速类型可以任意选择。如果作业加速类型选择IO加速或者本地盘加速,则此处task加速类型无法设置。

    图5 配置task加速
  6. 单击界面上方“启动作业”按钮,可以直接基于该流程创建分析作业。

通过“作业”页面创建

  • 新建作业
    1. 单击“新建作业”,在弹出的新建作业页面,填写作业信息。“作业名称”“标签”、和“描述”,选择需要执行的流程,设置“输出路径”“优先级”“计算节点标签”“超时时间”“加速类型”
      • 基本信息:包含作业名称、标签、描述。
      • 流程名称:选择需要执行的流程。
      • 输出路径:存放输出结果的路径,格式以/开头。例如项目中的output文件夹,输出路径可设置为/output。不填写路径时,默认以“作业名-UUID”格式生成输出路径。
      • 优先级:运行优先级,分为0~9级,优先级高的作业会被优先执行。默认值为0。

        如果当前投递的IO加速的作业,超过sfs总的作业配额数, 那么超出部分的作业会按照投递时间顺序,从最新投递的向前执行,不会按照优先级进行运行。

      • 计算节点标签:作业会调度到含有相应标签的计算节点上。

        当应用也配置了标签,如果应用和作业的计算节点标签在同一计算节点上,则应用调度至该计算节点上;应用和它的作业,不管节点标签是否一致,都会被调度到应用的节点标签所对应的计算节点上。

        如果设置了不存在的计算节点标签,作业会进入等待,直至配置了相应的标签。

      • 超时时间:作业运行时间超过设置时间时,认为超时,默认1440分钟,最大可设置为144000分钟,即作业运行至多100天。
      • 加速类型:
        加速效率:IO加速>本地盘加速>无
        • 无:作业运行于OBS中,不使用加速。
        • IO加速:IO加速使用弹性文件服务(SFS)提供高性能的数据读写,作业运行时,会将非最终结果的数据存储在SFS中用以提高任务运行效率,作业执行完成后会清理释放SFS空间。对于涉及频繁读写场景的任务建议开启IO加速,开启前需要先购买性能加速
        • 本地盘加速:使用计算节点的本地盘进行加速。使用本地盘加速时,需保证购买的计算节点带有“数据盘”。OBS桶中的数据不支持本地盘加速,使用OBS桶中数据用于本地盘加速,可能会导致作业运行失败。
          图6 “OBS”标签代表数据引用来源为OBS桶
      图7 作业设置
    2. 填写信息确认无误后,单击“确定”,进入流程设计器页面。
    3. 单击输入参数图标,设置输入数据。
    4. 单击应用图标,弹出编辑图标,单击按钮,设置应用参数。
    5. 参数确认无误后,单击界面上方“启动作业”按钮,可以直接基于该流程创建分析作业。
  • 克隆作业
    克隆已有的分析作业,作业的参数及流程一并克隆到流程设计器中。克隆作业后,请修改作业的输出数据路径,否则会有覆盖原有作业数据风险。
    1. 执行克隆操作有两种方式,请选择任一方式执行。
      • 在分析作业列表中,单击“操作”“克隆”,进入流程设计器页面。
        图8 克隆作业
      • 在分析作业列表中,单击作业名称,进入详情页。单击右上角“克隆”,进入流程设计器页面。
        图9 克隆作业
    2. 单击输入参数图标,设置输入数据。
    3. 单击应用图标,弹出编辑图标,单击按钮,设置应用参数。
    4. 参数确认无误后,单击界面上方“启动作业”按钮,可以直接基于该流程创建分析作业。

通过“工具”页面创建

  1. “工具”页面,流程列表中,单击“操作”“启动作业”。在弹出的作业设置页面,填写作业信息。“作业名称”“标签”、和“描述”,设置“输出路径”“优先级”“计算节点标签”“超时时间”“加速类型”
    • 基本信息:包含作业名称、标签、描述。
    • 输出路径:存放输出结果的路径,格式以/开头。例如项目中的output文件夹,输出路径可设置为/output。

      不填写路径时,默认以“作业名-UUID”格式生成输出路径。

    • 优先级:运行优先级,分为0~9级,优先级高的作业会被优先执行。默认值为0。

      如果当前投递的IO加速的作业,超过sfs总的作业配额数, 那么超出部分的作业会按照投递时间顺序,从最新投递的向前执行,不会按照优先级进行运行。

    • 计算节点标签:作业会调度到含有相应标签的计算节点上。

      当应用也配置了标签,如果应用和作业的计算节点标签在同一计算节点上,则应用调度至该计算节点上;应用和它的作业,不管节点标签是否一致,都会被调度到应用的节点标签所对应的计算节点上。

      如果设置了不存在的计算节点标签,作业会进入等待,直至配置了相应的标签。

    • 超时时间:作业运行时间超过设置时间时,认为超时,默认1440分钟,最大可设置为144000分钟,即作业运行至多100天。
    • 加速类型:
      加速效率:IO加速>本地盘加速>无
      • 无:作业运行于OBS中,不使用加速。
      • IO加速:IO加速使用弹性文件服务(SFS)提供高性能的数据读写,作业运行时,会将非最终结果的数据存储在SFS中用以提高任务运行效率,作业执行完成后会清理释放SFS空间。对于涉及频繁读写场景的任务建议开启IO加速,开启前需要先购买性能加速
      • 本地盘加速:使用计算节点的本地盘进行加速。使用本地盘加速时,需保证购买的计算节点带有“数据盘”。OBS桶中的数据不支持本地盘加速,使用OBS桶中数据用于本地盘加速,可能会导致作业运行失败。
        图10 “OBS”标签代表数据引用来源为OBS桶
    图11 启动作业
  2. 作业信息填写完成后,单击“确定”,进入流程设计器页面。
  3. 单击输入参数图标,设置输入数据。
  4. 单击应用图标,弹出编辑图标,单击按钮,设置应用参数。
  5. 参数确认无误后,单击界面上方“启动作业”按钮,可以直接基于该流程创建分析作业。

通过“上传作业”创建

通过在本地修改作业的yaml模板,运行分析作业。

  1. 获取作业yaml模板。
    • “项目管理 > 作业”页签中,单击“上传作业”,在弹出的页面中下载yaml示例文件。
    • 使用命令行工具,执行health get job -s命令获取创建作业的yaml模板,复制模板并保存到本地。可以保存成.yaml或.txt文件,保存为txt文件时,其内容需为yaml格式。
  2. 修改作业yaml模板。

    在本地编写模板,模板中的参数与在EIHealth平台创建作业过程一致。

    修改yaml模板时,详细的命令和参数请参见作业配置文件说明

    # 详情说明可参考API文档中作业管理-创建作业
    job:
      name: demo-job                                      # 作业名称,取值范围:[1,63],以小写字母开头,允许出现中划线(-)、数字和小写字母,且必须以小写字母或数字结尾
      description: description                            # 作业描述,取值范围:输入字符最大长度为255
      priority: 0                                         # 作业的优先级,取值范围[0,9],0最低,默认数值0
      timeout: 1440                                       # 作业执行超时时长,取值范围: [1, 144000],单位:分钟,默认数值1440
      output_dir:                                         # 作业存储目录,不指定则在workflow的工作目录下生产job同名子目录,指定则已指定路径为准,必须以/开头,结尾不能有/
      workflow_id: demo-workflow::1.0.0::gwj-test-01      # 作业依赖的组件id,组件当前仅支持流程,取值范围[1,135],支持大小写字母和数字。目前支持两种格式,特殊id:{流程名称}::{流程版本}::{源项目名称};正常id:流程id
      io_acc_id:                                          # IO加速实例id,为空则不开启IO加速,设置相应加速包id将会开启加速,当id设置为:auto_schedule,则会自动调度加速包,当id设置为 local_disk,则开启本地盘加速。
      node_labels:                                        # 计算节点标签 标签个数取值范围[0-1],单个节点标签最大长度56个字符,以字母或数字开头,可以包含下划线(_)、中划线(-)、点(.)、字母和数字,且必须以字母或数字结尾
      - health.label
      tasks:
      - task_name: app1-1                                 # 子任务实际名称,取值范围[1,32],只能以大小写字母开头,由字母、数字、中划线(-)、下划线(_)组成,以大小写字母或数字结尾。需要和已有子任务的名称一致。
        inputs:
        - name: input-dir                                 # 子任务的输入参数信息
          values:                                         # 子任务的参数数值,根据参数类型进行合法性校验
          - 'gwj-test-01:/test'
        resources:                                        # 子任务的资源配额
          cpu: 0.1C                                       # cpu申请使用量,取值范围[0.1-128],单位C,支持一位小数。对于应用,不填默认1C;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
          memory: 0.1G                                    # 内存申请使用量,取值范围[0.1-3072],单位G,支持一位小数。对于应用,不填默认1G;对于 流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
          gpu_type: ''                                    # gpu架构类型,取值范围 ' '|GPU|Snt9|D310。对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。覆盖关系:作业->流程->应用
          gpu: '0'                                        # gpu申请使用量,取值范围[0-16],仅支持整数,Snt9有特殊约束,申请数量需要是0,1,2,4,8 。对于应用,不填默认0;对于流程和作业,不填默认使用前一级的配置,填值会覆盖更新。
                                                          # 覆盖关系:作业->流程->应用
         io_acc_type                                      #子任务使用的IO加速类型,取值范围SFS、EVS。为空表示不使用加速。SFS表示使用io加速,EVS表示使用本地盘加速
      - task_name: app1-2
        inputs:
        - name: input-dir
          values:
          - '${app1-1.output-dir}'
        resources:
          cpu: 0.1C
          memory: 0.1G
          gpu_type: ''
          gpu: '0'
       io_acc_type: SFS
  3. 上传并运行作业。

    单击“上传作业”,在弹出的页面中上传yaml模板,上传成功后,即可运行作业。

分享:

    相关文档

    相关产品