320 likes | 477 Views
Wang feng Kunming University of Science and Technology wangfeng@acm.org 13700600260. C-SWF 科学工作流引擎研究进展.
E N D
Wang feng Kunming University of Science and Technology wangfeng@acm.org 13700600260 C-SWF 科学工作流引擎研究进展 This work was supported by Project “The Research of Scientific Workflow and Relational Key Technology in Virtual Observatory (10878009)” of NSFC-CAS joint fund of astronomy and Natural Science Foundation of Yunnan Province (2007F179M).
Background • 什么是科学工作流?Scientific Workflow • 与普通的业务工作流的区别?Business Workflow
What is a scientific workflow? • Goals: 对科学家的重复的数据管理与分析任务自动化 - automate a scientist’s repetitive data management and analysis tasks • 典型的过程与阶段: • Data access, scheduling, generation, transformation, aggregation, analysis, visualization • Design, test, share, deploy, execute, reuse SWF’s
天文学家,以网络为平台,以SWF为核心与任务定制,摆脱工具与计算机技能的束缚,实现分布数据的自动计算与展现,直接进行科学研究。天文学家,以网络为平台,以SWF为核心与任务定制,摆脱工具与计算机技能的束缚,实现分布数据的自动计算与展现,直接进行科学研究。 • Not Virtual Observatory. Should be Digital Observatory. Or Computing Observatory.
Difference • 源于网格计算,广泛用于生物信息学、经济学的处理。 • 天文需要有特殊的科学工作流引擎吗? • Lots of data (although individual data items might be bigger) • Distributed data • Chains of analyses • MORE standards for data formatting/exchange
Scientific Workflows: Some Findings • 比业务流更多的数据流 • 需要“编程扩展” • 需要抽象与嵌套工作流
Data-flow vs Control-flow • Rough classification: • Control • Don’t know when data arrive (quick reaction) • Time of arrival often matters more than value • Data • Data arrive in regular streams (samples) • Value matters most
Data-flow vs. Control-flow • Specification, synthesis, and validation methods tend to emphasize… • 控制相关 - For Control: • 事件响应相关 • 应答时间 • 针对”deadline”的实时调度) • 事件和处理优先
Data-flow vs. Control-flow • For Data: • 基于input和output的功能依赖 • 内存/时间 有效性 • 针对有效的流水线思想的数据流调度 • 所有的事件与处理是平等的。
Business Workflows vs. Scientific Workflows • Business Workflows • 面向任务: travel reservations, credit-approval, etc. • Tasks, documents, etc undergo modifications (e.g., flight reservation from reserved to ticketed), but modified WF objects still identifiable throughout • Complex control flow, complex process composition • Dataflow and control-flow are often divorced
Business Workflows vs. Scientific Workflows • Scientific Workflows • Dataflow and data transformations • Data problems: volume, complexity, heterogeneity • Grid aspects: • Distributed computation • Distributed data • User-interactions/WF steering • Data, tool, and analysis integration • Dataflow and control-flow are often married
SWF Data Driven • BWF Task Driven
一句话。。。 • 把云南的Mushroom和四川的花椒,丢到重庆小天鹅的汤中,再用中石化的天然气加热,结果给存到碗里去。 • 12:40才吃中饭,2:30就开会,要坚持到6:00才可以奔向小天鹅打望。
What is C-SWF (China VO SWF) • C-SWF is : • 基于数据流模型的一个工作流语言; • 基于图态的可编程环境 • 一个可以有效集成分布服务、数据,并可以有机执行的任务调度系统。
Workflow diagram Available services Data query Soaplab Tree view of workflow structure
关注点 • VO: 可计算的访问服务 • C-SWF必须集成所有可计算的访问服务,并使之形成工作流。 • 一个服务的输出可以成为其它服务的输入,数据需要支持分支、合并等。 • 处理并行,线程,监控和服务发现
关键的问题 • 服务发现 • Free text search over ‘known’ services. • 基于语义的检索,如何有效的快速地找到所需要的服务.科学家如何理解功能? • 数据出处跟踪- Provenance tracking • 结果数据的全程跟踪,与恐怖的天文海量数据的矛盾 • 如何实现自动的、语义的数据与数据服务注释. • Possible as the workflow engine creates a ‘managed environment’ with an overview of all data movement.
结果可视化展现 Result visualization • Common renderers included in base distribution include 3d structure, images, graph rendering。但天文学家到底需要什么? • 可扩展性 Extensibility • New service classes • New renderer types • New UI elements
友好人机界面 • After all, not all astronomers are computer scientists. • CLI ???? GUI???? • 友好Re-run • 天文研究是探索过程,本质上无明确需求。 • 服务的暂停、重运行、参数调整
进展 • 1. 数据接口: • 支持所有主流格式,(FITS, Excel, Plain Text…) • Distributed Data Format (VO-DAS) • 2. 框架 • Use Taverna(http://www.mygrid.org.uk) as our reference model.
3. 提供一定程度的命令行(CLI)与图形用户接口(GUI) • 4. 实现了Service的调用,与数据接口。 • 5. 支持第三方开发,自定义Plug-in接口标准
Services • 实现的目标: • SOAP based web services • Soaplab wrapped command line tools • Astrogrid and object constructors • Inline interpreted scripting (Java based) • 通过扩展,实现其它服务的整合。
Stateful SOAP service support • Add service to services list by pointing Taverna to Web Service Description Language (WSDL) document online • Taverna inspects WSDL, extracts operations • Add operations to workflow, right click to automatically add document builders and splitters for doc/literal style services • Use nested workflow to define polling logic, sub-workflow fails, waits and retries if data is not ready Document builders Service invocation (creates job) Polling loop (check status, fail if not ready) Get results *SOAP is the Simple Object Access Protocol - http://www.w3.org/TR/soap/ & http://www.w3.org/TR/wsdl
Soaplab Support Individual tool within category Soaplab server in services list Soaplab services support rich descriptive metadata • Soaplab是Web服务生成器,提供了一个以编程方式访问远程计算机上应用。因为这样的应用,特别是在科学的环境,通常是分析数据, Soaplab通常称为分析Web服务 • http://www.ebi.ac.uk/Tools/webservices/soaplab/guide
Project management • 预计在2010年3 -4月完成Engine的原型,并提供开源下载。 • 支持Plug-in模式,鼓励开源编程与协作 • 支持Windows, Linux, Mac OS • Written in JAVA (JDK 1.5 or up)
正在开展的。。。 • 1、通用数据访问接口 • 2、流程与服务调用 • 3、引擎 • 4、数据出处 • 5、可编程的任务描述
问题与思考 • 当前无可用天文服务可以调用。 • 迫切需要标准。 • 迫切需要天文数据处理服务。 • 标准天文可用处理模块、服务等的建设 • 可用服务部署
天文服务 • 目前,国内基本还没有对天文数据提供服务类借口,没有自定制服务。 • 与Bioinformation学科相比,基础差距较大。
缺乏相关标准 • VO的标准是什么? • 如何在China-VO中,来明确支持可定义数据接口、可定义的数据流描述。 • 服务的申明与基于语义的搜索模式 • 与天文学家的融合
标准处理服务 • 迫切需要在国内,构建开放的数据处理标准服务 (Web Service) • 将传统的桌面科学数据处理软件功能网络化、网格化,特别是天文学家迫切需要的功能。 • Plugin – Open source