虚拟筛选海量并行任务管理系统中数据流的管理
【摘要】:
虚拟筛选是在计算机上针对特定靶标蛋白筛选出最合适的候选药物的过程。随着网格计算技术的发展,科学家越来越倾向于利用网格环境进行药物的大规模虚拟筛选以减少新药研制的成本和时间。大规模虚拟筛选涉及海量数据,待筛选的小分子化合物通常数以百万计。
在网格环境下进行基于分子对接的大规模虚拟筛选应用,通常的做法是科学家手动查询小分子化合物并分组,在网格平台上编辑多个对接作业依次对分组进行计算,手动下载所有对接结果。虽然利用了网格强大的计算能力,但是科学家的工作非常复杂和繁琐,并且需要学习大量计算机领域知识。以CSGrid网格平台为基础设计的海量并行任务管理系统,目的是实现大规模虚拟筛选应用在网格平台上的自动执行,从而将科学家从繁琐的工作中解脱出来。海量并行任务管理系统将虚拟筛选应用分成多个并行作业在网格平台上计算,作业流和数据流的管理非常重要。本文的研究重点,就是如何设计系统中的数据流管理功能,制定合理的数据流配置策略,使海量数据流配合并行作业调度策略,实现网格环境下大规模虚拟筛选应用的高效自动运行,提高网格资源的利用率。
本文设计的数据流管理功能由三个模块实现。第一个模块是查询条件定制接口,该模块为用户提供了一个定制数据查询条件的图形编辑器:第二个模块是数据查询、分组及传输Web Service,该模块从分布式小分子化合物数据库中查询出符合条件的小分子化合物,按可旋转键数排序并分组,再将分组上传至需要数据的网格节点。第三个模块是统一数据管理空间,该模块提供了所有网格节点数据的全局视图,可以实现虚拟筛选结果的并行下载。本文重点从用户体验和实现技术方面对各个模块进行了深入的探讨。