Bio-OS / bioos

Apache License 2.0
59 stars 16 forks source link

任务挑战赛-【赛题解读】T2:实现工作流运行任务监控 #20

Open yifanchen90 opened 1 year ago

yifanchen90 commented 1 year ago

背景介绍

生物信息学是一个快速发展的领域,其中涉及大量的数据处理和分析。在生物信息学中,流程任务监控是非常重要的,因为它可以帮助研究人员了解数据处理的状态和进度,及时发现和解决问题。Prometheus是一个开源的监控系统,它可以帮助我们实现生物信息流程任务的监控。本次生物信息开发大赛的主题是借助Prometheus开源监控实现生物信息流程任务监控的开发。参赛者需要熟悉Prometheus的基本原理和使用方法,了解生物信息学的流程任务,并能够将两者结合起来,实现对生物信息流程任务的监控。 Bio-OS开源创新大赛分为两种类型,分别为开发类和工具类,其中开发类赛题主要面向具备IT开发和工程化能力的参赛选手,对于本赛题来说,熟悉Go语言开发、Prometheus开源监控实现、Cromwell运行机制等,可以尝试本赛题。

任务介绍

本次生物信息开发大赛的主题是借助 Prometheus 开源监控实现生物信息流程任务监控的开发。该赛题要求参赛团队基于Bio-OS开源项目https://github.com/Bio-OS/bioos 实现Bio-OS平台中工作流任务运行监控能力。参赛者需要完成以下任务:

  1. 熟悉 Prometheus 的基本原理和使用方法,掌握其数据采集、存储和查询等功能。
  2. 了解生物信息学的流程任务,包括数据处理、分析和可视化等环节,明确监控的指标,如任务资源利用率(CPU/内存/磁盘)、任务开始结束时间等。
  3. 设计一个生物信息学流程任务的监控方案,包括监控的指标、采集数据的方式、数据存储的方式等。
  4. 实现监控方案,包括编写 Prometheus 的配置文件、编写 exporter 程序、编写 Prometheus 的查询语句等。
  5. 展示监控的效果,包括生成各种图表和报表,展示监控的数据和状态等。

提交内容

请将以下提交内容发送到邮箱: bioosopensource@163.com 提交内容

  1. 一个名称为"生信挑战-T4-队伍名称"的md或word文件 (示例文档https://github.com/Bio-OS/bioos/blob/main/docs/static/%E6%96%B9%E6%A1%88%E8%AE%BE%E8%AE%A1%E6%A8%A1%E7%89%88.doc仅作为参考,非必须参照)
    • 对整体流程规范扩展的方案设计介绍
    • 扩展的工作流功能使用说明
    • 包含一个视频链接(如上传到B站或其他网站,附上链接,如视频不大也可以直接发送邮箱)
  2. 将源代码提交PR到https://github.com/Bio-OS/bioos中

评分标准

本次比赛的评分标准包括以下几个方面:

  1. 难度基础分(权重10%)
    • T1:Notebook插件可视化工具集成 --难度基础分6分
    • T2:实现工作流运行任务监控 -- 难度基础分8分
    • T3:命令行工具实现Bio-OS Notebook使用 -- 难度基础分8分
    • T4:Bio-OS流程规范扩展 -- 难度基础分 10分
  2. 工具数量:工具的数量,数量越多,评分越高,超过4个工具后此项可得满分 (权重20%)
  3. Demo效果:DEMO效果展示,Demo视频中可尽量展示完整的功能以及监控效果。(权重20%)
  4. 代码实现:通过提交的源代码进行code review,将从代码质量、可维护性、可读性多个维度进行评分。(权重30%)
    • 代码质量:是否正确的实现了预期功能和需求,是否处理了预期的错误情况并提供了清晰地错误消息和处理方式,是否考虑可配置参数
    • 可维护性:是否易于修改和维护,包括代码的模块化程度、复用性,是否易于扩展
    • 可读性:代码是否易于阅读和理解,包括变量名、函数名、注释等命名是否清晰,代码结构是否合理
  5. 文档编写(20%)
    • 内容准确性:是否准确、完整、清晰的表达了所需信息
    • 文档可读性:文档的结构是否合理,逻辑清晰,是否易于阅读和理解,是否使用了恰当的图表和图片等