Containers for computational reproducibility

Containers for computational reproducibility
复制标题

DOI:
10.1038/s43586-023-00236-9
复制
发表时间:
2023-07
期刊:
Nature Reviews Methods Primers
影响因子:
--
通讯作者:
David Moreau;K. Wiebels;C. Boettiger
David Moreau;K. Wiebels;C. Boettiger
中科院分区:
其他
文献类型:
--
作者:
David Moreau;K. Wiebels;C. Boettiger

文献摘要

相似文献

近年来,计算工具的快速发展使科学取得了巨大的进步。然而,这种技术能力的快速增长也是有代价的,因为它导致软件环境复杂性的增加和系统间潜在的兼容性问题。处理或分析中的高级工作流程通常需要特定的软件版本和操作系统才能顺利运行,机器和研究人员之间的差异可能会阻碍可重复性和有效协作。因此,科学团队越来越依赖容器来实现强大、可靠的研究生态系统。容器最初在软件工程中流行,现在在科学项目中变得很常见,特别是在大型协作项目中。在本书中,我们描述了什么是容器,它们是如何工作的,以及它们在科学项目中使用的基本原理。我们回顾了不同背景和领域中最先进的实现,并在各个科学领域中提供了示例。最后,我们讨论了广泛采用容器化的可能性,特别是在开放和可复制的研究背景下,并提出建议,以促进跨平台和域的无缝实施,包括在高性能计算集群,如那些通常在大学和研究机构。
The fast-paced development of computational tools has enabled tremendous scientific progress in recent years. However, this rapid surge of technological capability also comes at a cost, as it leads to an increase in the complexity of software environments and potential compatibility issues across systems. Advanced workflows in processing or analysis often require specific software versions and operating systems to run smoothly, and discrepancies across machines and researchers can impede reproducibility and efficient collaboration. As a result, scientific teams are increasingly relying on containers to implement robust, dependable research ecosystems. Originally popularized in software engineering, containers have become common in scientific projects, particularly in large collaborative efforts. In this Primer, we describe what containers are, how they work and the rationale for their use in scientific projects. We review state-of-the-art implementations in diverse contexts and fields, with examples in various scientific fields. Finally, we discuss the possibilities enabled by the widespread adoption of containerization, especially in the context of open and reproducible research, and propose recommendations to facilitate seamless implementation across platforms and domains, including within high-performance computing clusters such as those typically available at universities and research institutes.