在Taverna中创建科学工作流

使用Java语言开发的工作流执行工具并不少见,但由英国e-Science研究机构OMII-UK资助开发的Taverna项目在工作流处理方面却有其独到之处。

Taverna是myGrid网格项目旗下的开源工作流设计和执行引擎,其目标是提供一种语言和软件工具,方便在eScience中使用工作流和分布计算技术。

通过Taverna提供的可视化设计器,使用者可以组装社会化信息、高性能计算、地理生物等不同域内的Web服务,并在此基础上定制并执行工作流。

在Taverna Workbench启动同时,默认会加载Biomart、Soaplab定义的Web服务组件以及已有WSDL描述,共用户直接拖拽到设计器中进行工作流组装。

Taverna本身使用Scufl(Simple Conceptual Unified Flow language)格式的工作流描述语言。Scufl是基于XML的高抽象级数据流描述语言,定义了不同服务间数据交互的流程。Scufl在WSFL工作流描述语言的基础上,提供更简化、抽象级别更高的描述,适合科学工作流的语义定义。同时,Taverna也支持可识别XML格式定义的工作流。

在Taverna工作流描述中,包含的五种实体分别是:(1)输入集Inputs(2)输出集Outputs(3)服务组成的处理过程Processors(4)数据源到数据目的地的数据连接Data Links(5)协同约束条件和依赖规则Coordination Constraints。一个完整的工作流,在定义了上述五个部分之后,就可以在Taverna Workbench上执行。

目前已有专门的Taverna项目支持站点myExperiment,帮助使用者寻找或分享Taverna创建的各种工作流。对于Startup的用户,可以先下载用于获取每日的Dilbert漫画的工作流上手实例,来体验Taverna所提供的功能。另外,还有一份OMII的制作的Taverna培训教程,来帮助用户了解深入使用Taverna工作流的更多功能。

留下评论