运行选项

本文介绍基因分析平台支持的运行选项,以及对分析结果的影响。

Call-Caching

Call-Caching是指当用户在基因分析平台中计算作业,被检测到与之前的执行记录一致,可以直接使用之前的计算结果而无需重新计算,可以节省时间和费用。

简单来说,当一个计算作业成功完成后,如果平台再遇到完全一致的输入、完全一致的执行命令时,会跳过实际执行,立刻直接使用已有的计算结果返回。

命中规则:平台根据计算作业输入参数值、运行时属性值(如cpu,memory,docker,software等)、执行命令行等共同计算出一个哈希值。如果与平台历史的计算作业记录的哈希值一致,且该作业记录在有效保留时间内,则被认为是命中 Call-Caching。

有效保留时间:平台成功完成的计算作业记录有效保留时间为30天。如果用户主动删除中间结果,则对应的计算作业记录也被视为无效,无法参与Call-Caching。

命中结果:平台的运行任务产生的计算作业,如果命中Call-Caching,则会直接跳过执行,复用历史记录中的输出结果。平台将不会产生后端计算作业,也不会产生资源消耗,无需收取费用。

删除中间结果

用户运行任务的中间结果,会被基因分析平台保存到用户的OSS中,并作为后续分析步骤的输入文件。

中间结果

运行任务完成后,除了应用定义的最终输出外,流程中间结果也会保留。这些文件能够作为恢复失败的运行任务,或者命中Call-Caching的作业输入。同时,保留这些文件也会占用用户的存储空间,增加存储的费用。

用户在提交运行任务时,可以指定“删除中间结果”的选项。基因分析平台在运行任务完成后,除应用定义的流程输出文件外,会删除所有中间结果文件,只保留基础的脚本和日志文件,以节省用户的存储空间。

警告

选择删除中间结果后,该运行任务无法被中断恢复,其包含的计算作业也无法被Call-Caching命中。

输出文件位置

用户运行任务的所有文件都会平台统一上传到指定的OSS存储位置下。默认缺省情况下,工作空间下的运行任务结果都会被输出到工作空间绑定的OSS存储桶下。

oss://<工作空间绑定的OSS Bucket>/analysis/

生成的所有文件保存的目录结构如下:

oss://<工作空间绑定的OSS Bucket>/analysis/
|- <RunID>/<WorkflowName>/<WorkflowID>/
     |- call-xxxx
     |- call-xxxx
     |- call-hc
         |- bcs-stderr
         |- bcs-stdout
         |- rc
         |- script
         |- stderr
         |- stdout
         |- test.g.vcf.gz
         |- test.vcf.gz
         |- worker
  • 用户运行任务可以指定任意具有读写权限的OSS存储位置,作为输出文件位置,如oss://bucket/dir/

  • 输出文件位置下所有的文件具有相同的目录结构

    • RUNID:基因分析平台运行任务的唯一ID

    • WorkflowName:该运行任务使用的WDL应用中的Workflow名称

    • WorkflowID:该Workflow执行的UUID,由执行引擎自动生成

    • Call-xxxx:Workflow中的Call名称

      • stderr:运行任务的标准错误

      • stdout:运行任务的标准输出