站在更高的角度,对于当前基因测序情况的总结就是:利用各种软件进行各种运算,来处理海量的基因数据。
3.2 传统计算方法首先,一个人30X的覆盖深度的全基因组测序仪下机数据,可以到200G。中间运算过程中,还会变大至600G,整个重组计算过程大概需要20多个小时。所以每个基因测序都是一个极其消耗计算资源的过程。随着基因测序技术的普及,这个测序业务量也是在逐年增长。
早期为了运行如此大规模的计算存储过程,一般有两种方式。
1. 采购高性能计算机,提高单机性能往上垒。
2. 购买服务器集群,安装HPC管理软件。利用HPC多任务并发提升计算能力。
然而实际使用上,基因厂商通常会面临不少问题:
首先,不管是直接购买物理机或者自建HPC集群,成本都是非常高的。在前期测序业务还么有开展时,就需要投入大量资金进行设备采购维护,无疑提高了一个测序公司的风险成本。
其次,由于测序业务量本身是存在波动的,这会导致服务器的数量不能很好的控制。服务器不足则无法满足业务高峰时的测序任务。如果采购可以满足最大峰值的集群,那么在业务量不能时刻保持高峰时,就会存在很大的成本浪费。
最后一个就是运维成本。一个测序业务作为主要发展方向的公司,却需要投入大量人力去维护计算环境。包括软件的安装&升级,故障的定位,环境的恢复等等。这些都无疑增大了运营成本。
3.3 云上计算方法随着云计算技术的进步,目前公有云平台已经可以为测序公司提供大规模且极易扩展的数据计算分析能力。而云计算带给测序厂商的,不仅是随时可以扩展或者随时可以销毁的资源,还减少了厂商对于前期硬件设备的投入,以及计算环境日益增长的运维成本。
目前厂商将部分测序业务搬迁放在云上执行,已经是一种非常普遍的现象。同时,越来越多的专注于基因测序的公有云也不断出现,比如DNAnexus、Illumina’s BaseSpace。其中又有一部分是采用云上云的方式,也就是在基础公有云上构建领域公有云。
比如SevenBridge的Cancer Genomics Cloud,就是构建在谷歌云之上的。
可以看到,随着云计算价格的逐步降低,基因测序技术的运算过程运行在云端将是一个越来越大的趋势。
3.4 容器技术随着以Docker为代表的容器技术的崛起和普及,这种轻量级虚拟化技术,迅速席卷全球,为传统软件的安装部署带了了革命性的变革。
Docker容器技术使得应用程序可以在几乎任何地方以相同的方式运行。开发人员在自己笔记本上创建并测试好的容器,无需任何修改就能够在生产系统的虚拟机、物理服务器或公有云主机上运行。
即:容器使软件具备了超强的可移植能力。它可以很好的解决测序软件的各种版本运行在各种环境下的问题。比如,同一个VM上同时运行两个不同版本的GATK软件。这在传统的VM模型中是不具备的,这就给基因测序构建复杂业务场景,提供了便捷性。因为环境如果损坏,可以通过容器技术,轻松的恢复。
同时,整个测序结果,也可以很方便的重现。计算过程的可复现,这在科研领域是非常重要的。传统模型下,由于各种指定版本的软件安装,加上拥有复杂依赖关系的业务流程,要重现一个科研结果,是很困难的事情。