国际顶级学术刊物《自然》加冕容器—技术中的贵族

2017-08-14技术干货

计算机专家 Deborah Bard 表示,利用容器能将模拟、分析软件的安装时间由三四天缩减到几个小时。

《自然》网站报道了容器技术对数据驱动科学研究的推动。科学研究越来越多地向数据密集型发展,在研究过程中构建复杂的分布式数据分析工具往往令研究人员十分头疼。容器是一种全新的轻量级的软件交付部署方式,基于容器可以在数分钟内完成复杂分布式软件的部署,大大加速了“软件密集型”科学研究的进程。

谐云科技-致力容器技术研发

 

工具箱|软件简化
容器技术可以轻松解决部署软件中遇到的难题,同时提高数据驱动研究的可重复性。
在2015年,遗传学家Guy Reeves试图配置一个名为Galaxy的免费软件系统,使他的生物信息学项目脱颖而出。经过一两天的苦思冥想之后,他不得不向公司IT部门的成员寻求帮助。成员们安装了Docker,这是一种用于模拟计算环境的技术,通过容器将所有Reeves需要东西打包在一起,形成一个特殊版本的Galaxy,并对Galaxy设置进行了轻微的调整后,REEVES轻松的在“午饭前完成”了。

随着科学信息密集化,更多的软件被用来从这些信息数据中提取知识。但很少有研究人员有充分的时间和计算能力来运用这些软件。容器,作为软件代码包以及运行它的计算环境可以解决这道障碍。他们帮助研究人员轻松运用更广泛的软件,加速实验进程的同时做到重复性的提升。

容器本质上是轻量级的可配置虚拟机即通过模拟操作系统及其硬件,做到允许软件开发人员共享其计算环境。研究人员使用它们来分配复杂的科学软件系统,从而允许其他人在与原始开发人员在相同条件下执行软件。在这样做时,容器可以消除计算生物学中的一个变异性来源。

内部内容
依靠准备执行。它们通常采用必须进行处理和配置的脚本或编程源代码的形式。大多数软件都需要额外的工具和库,而用户却很可能并没有安装它们。即使用户可以使软件工作,计算环境的差异(如依赖于其的工具的安装版本)也可以微妙地改变性能,影响重现性。容器通过将运行目标软件(包括设置和附件)所需的计算环境的关键元素打包到轻量级虚拟框中来降低复杂性。它们不会改变运行所需的资源,如果一个工具需要大量的内存,那么它的容器也是如此。但是它们使软件更容易使用,结果更容易复制。

根据所使用的软件Docker,Singularity和rkt是受欢迎的,容器可以在Windows,Mac OS X,Linux或云端运行。他们可以将单一环境的任何内容打包到诸如Galaxy的复杂环境中。这些工具可以相互交互,比如共享数据或构建管道。因为每个应用程序都限定在自己的框中,所以即使通常相互冲突的工具也可以和谐地运行。

Docker使用可执行包,称为镜像,其中包括要包含的工具以及开发人员的计算环境。要创建Docker镜像,开发人员将创建一个配置文件,其中包含如何下载和构建其中所需的所有工具的说明。然后他或她’运行’该文件以创建可执行包。所有用户然后需要做的是检索包并运行它。其他工具也可以生成镜像,例如,Reprozip程序通过观察软件工具的运行和跟踪工具所需的输入文件和软件库来组装Docker兼容程序包。

获取集装箱
尽管计算机科学家对容器平台有多种选择,但是2013年推出的开源项目Docker,也许是科学家中最受欢迎的。它拥有大量的预建容器注册表和竞争对手尚未匹及的活跃在线社区。然而对于许多高性能计算系统的管理员却放弃Docker的使用,因为它需要高级别的管理访问权限才能运行。这种类型的访问可能允许用户复制或损坏系统上的任何东西。基于付费的企业版附加组件允许用户回避该要求,但免费的社区版本不可用。然而,他们可以使用不同的容器化工具,例如Shifter,它不需要完全权限,或root访问权限,但仍然支持Docker镜像。

提升可再生能力
Cranmer说,尽管关于重现性的大部分辩论都集中在数据和代码上,但计算环境本身也起了很大的作用。 “这真的很要,”他说。    

乔治华盛顿大学的机械和航空航天工程师洛雷娜·巴尔巴(Lorena Barba)表示,容器只能与其封装的工具一样好。 “如果研究人员开始把糟糕的代码填满容器并传递给我们,我们注定就会失败。”布朗说,没有资金机构和期刊的压力,容器也不太可能使研究人员突然拥抱计算重现性。

纽约州石溪大学生物信息学家乔纳斯·阿尔梅达(Jonas Almeida)说,像Google和微软这样的公司已经运行了一些容器软件。大型生物信息学项目亦不会落后。位于马里兰州巴尔的摩的约翰霍普金斯大学计算机科学家Enis Afgan说,基于云的版本的Galaxy最终将默认运行在容器内。

在五至十年中,Almeida预测,科学家将不再需要担心下载和配置软件;工具将简单地容器化。

“这是不可避免的。”他说。

 

原文链接:http://www.nature.com/news/software-simplified-1.22059

电子邮件地址不会被公开。 必填项已用*标注