当前位置:问答库>论文摘要

题目:面向SaaS的科学工作流平台的研究与实现

关键词:科学工作流;云计算;SaaS;定制;自动化部署;组合测试

  摘要


    目前大多数的科学工作流服务仅能提供常用的软件工具、数据分析流程以及同质化的计算环境,因而无法满足科研人员对于科学实验多样化的需求。云计算的发展为科学工作流带来了新的发展机遇。本文将云平台和SaaS软件交付模式运用到科学工作流之中,为科研人员提供了可定制、自动化部署以及自动化执行的科学工作流服务。本文的工作主要从以下三个方面展开:

    (1)本文首先提出了面向SaaS的科学工作流平台框架,其主要包含了三个细分框架:定制框架、部署框架和执行框架。定制框架使得科研人员以及社区开发人员能够从显示层、工作流层、执行层以及计算环境层四个层次实现对科学工作流SaaS应用的定制,并将生成两个描述文件:计算环境XML抽象描述文件和工作流执行流程XML描述文件。部署框架根据计算环境XML抽象描述语言和科学软件自动化配置描述语言设计了相应的部署流程实现在云平台中自动化部署计算环境。执行框架根据工作流执行流程XML描述语言设计了相应的执行流程对计算任务进行调度并将其运行在云端计算环境中。

    (2)在面向SaaS的科学工作流平台框架的基础上,本文实现了相应的系统,其主要包括三个部分:Galaxy定制服务、部署系统以及执行系统。Galaxy定制服务通过其应用程序XML描述语言和工作流Web编辑界面实现了在显示层、工作流层以及执行层的定制,本文在该定制服务的基础上添加了计算环境的定制功能。部署系统负责将计算环境XML抽象描述语言转换成相应的Spiceweasel描述语言,并通过与Chef Server进行通信在云平台中自动化部署相应的计算环境。执行系统通过修改Galaxy中计算任务的相关特征信息使得能够将其运行在指定的计算环境中。本文同时为执行系统添加了Hadoop分布式计算环境,使得能够将满足相关条件的计算任务以MapReduce任务的方式运行。

    (3)为了保证科研人员定制的科学工作流SaaS应用能够正确运行,需要在其被交付使用之前对其进行测试。本文在传统组合测试方法、TA蕴含理论以及AR自适应错误定位算法的基础上,提出了针对科学工作流SaaS应用的组合测试方法,其能够准确定位导致测试失败的错误原因,并能有效减少非必要的测试工作量。在该组合测试方法的基础上,本文同时实现了相应的MapReduce并行测试程序来加快整个测试过程。

    本文最后使用一个RNA测序实例,并依次从定制阶段、部署阶段以及执行阶段详细介绍了如何使用本文提出的面向SaaS的科学工作流平台框架及其系统来进行科学计算。针对提出的科学工作流SaaS应用组合测试方法及其MapReduce并行测试程序,本文在Hadoop分布式计算环境下对其做了相关模拟实验,并分析了相关因素对测试所需时间以及TA效率(TA 减少的测试工作量占总测试工作量的百分比)的影响。