引言

在之前的一篇文章中我介绍了目前可选的几种生信流程开发方案。毫不夸张的说,目前生物信息学分析流程开发就像一锅乱粥一样,可谓是八仙过海各显神通,这给很多技术团队选择数据分析流程开发方案提出了很大的挑战。

恰巧最近实验室了结了一些数据分析课题,需要更新和迭代数据分析流程来为后续数据分析课题提供支持。因此,这篇短文我主要是列了一些影响生信分析流程开发方案选择的因素供大家参考。

已有的生信分析流程开发方案

  • 脚本语言流
  • Common Workflow language 语言流
  • Makefile流
  • 配置文件流
  • Jupyter notebook和R markdown流
  • ……

相关信息参见:生信分析流程构建的几大流派

影响生信分析流程开发方案选择的几大因素

  • 生信数据分析流程结果重现的难易
  • 生信数据分析流程历史记录是否可查询/可恢复
  • 数据分析流程的数量
  • 数据分析流程的复杂程度
  • 数据分析流程的使用人员类型
  • 云计算平台架构(公有云、私有云、混合云、大学HPC)
  • 技术团队大小
  • 技术团队成员的综合素质和学习能力
  • 技术团队前期代码和文档的积累情况(如主力编程语言)
  • 是否符合技术团队成员的学习愿望
  • 是否符合技术团队成员的职业生涯规划

以上因素总结起来大都可以归咎到我们的付出和回报上来,即我们的成本花费(学习成本+开发成本+运维成本)和期望获取的回报(如效率提升、成本降低、培养人才、提高客户/合作团队用户体验)是否成比例。

在面对实际项目时,以上因素我们均需要结合团队和自身情况权衡考量。

这就像我们去挑选一台笔记本电脑,往往希望买到那台当时性价比最高的机器,可是与低廉价格伴随的可能就是:售后服务差,使用寿命短,软件迭代更新慢,经常出问题。

笔记本选购参考:

  • CPU型号(I5/I7/I9)和主频高低,标准电压(游戏本)还是降频版(便携超薄本)
  • 显示器尺寸(17/15/13寸)
  • 显示器是否窄边(影响屏占比)
  • 显示器是不是144Hz高清屏/是不是视网膜屏(MacBook Pro、Dell 外星人4K)
  • 显示器是否带G-Sync(影响游戏性能)
  • 显卡类型(GTX1050/1060/1070/1070 MAX-Q/1080;RTX2060/RTX2070 MAX-Q/RTX2070)
  • 是否有SSD固态硬盘,大小如何(128/256/512G/1T/2T)
  • 是否有机械硬盘,机械硬盘的大小如何(1T/2T),转速如何(5400/7200)
  • 散热性能如何
  • 便携性如何
  • 售后如何,是否大厂
  • 用户评价如何,差评率、返厂率大概多少
  • 综合性能跑分如何
  • 是否支持指纹解锁
  • 是否提供TypeC接口
  • 连接外置显卡扩展坞的性能如何

如果你现在想花费10000元左右,大概可以选择哪些机器?

  • 联想
  • 戴尔
  • 惠普
  • 机械革命
  • 神州
  • ……

生信分析流程开发方案选择策略(保持持续更新)

  • 符合未来发展趋势的 优于 不符合未来发展趋势的
  • 不需要人工参与的 优于 需要人工参与的
  • 开源的 优于 不开源的
  • 社区发展好的 优于 社区发展差的
  • 高分SCI文章用过的 优于 没有被高分文章用过的
  • 使用版本管理的 优于 不使用版本管理的
  • 支持打包/封装的 优于 不支持打包/封装的
  • 使用容器技术的 优于 不使用容器技术的
  • 有日志记录的 优于 无日志记录的
  • 有定期数据备份的 优于 无定期数据备份的
  • 支持自动排错的 优于 无自动排错的
  • 支持断点重启的 优于 无断点重启的
  • 开发成本低的 优于 开发成本高的
  • 运维成本低的 优于 运维成本高的
  • 学习成本低的 优于 学习成本高的
  • 使用难度低的 优于 使用难度高的
  • 并行效率高的 优于 并行效率低的
  • 支持公有云的 优于 不支持公有云的
  • 支持任务提交系统的 优于 不支持任务提交系统的
  • 执行效率高的 优于 执行效率低的
  • 支持交互式图形化界面的 优于 不支持交互式没有图形化界面的
  • 提供API的 优于 不提供API的