(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf_第1页
(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf_第2页
(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf_第3页
(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf_第4页
(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf_第5页
已阅读5页,还剩98页未读 继续免费阅读

(计算机软件与理论专业论文)面向用户的科学工作流数据跟踪的研究与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 论文题目: 专业: 硕士生: 指导教师: 面向用户的科学工作流数据跟踪的研究与实现 计算机软件与理论 陆佳 余阳副教授 摘要 工作流技术的不断发展,使其应用领域也不断扩大。科学工作流作为一种有 别于传统工作流的工作流类型正成为当前学术界研究的热点。科学工作流为了给 科学家提供高效的数据管理和实验分析,将工作流技术应用于科学研究领域,在 网络基础设施上进行大规模计算和协同计算提供有效方法。数据集中与计算密集 是科学工作流的主要特点。因此,科学工作流的数据跟踪成为科学工作流的迫切 需求。国内对科学工作流数据跟踪的研究几乎是空白,而国外对其研究较多,但 是大部分都缺乏良好的模型支持、数据流分析、国际标准的查询接口和便于用户 使用的可视化跟踪。 针对这一问题,本文提出一种支持过程网络计算模型的科学工作流模型。通 过对该模型的数据流分析,在开源项目- - k e p l e r 科学工作流系统的基础上,实现 了数据项的可视化跟踪与具有国际标准的x q u e r y 对跟踪数据的查询,极大的方 便了科学工作流用户。 科学工作流数据跟踪的实现需要有相应的模型支持。过程网络计算模型是科 学工作流领域广泛使用的一个计算模型,并且该模型有利于数据流的分析。数据 跟踪贯穿于科学工作流流程设计阶段、运行阶段和运行后三个阶段。本文在流程 设计阶段对工作流的数据流进行分析,检验流程中的数据异常,包括数据缺失和 数据冗余,并给出相应的数据验证算法;在流程运行阶段,对数据项进行记录, 包括元数据、参数与流程数据项等;在流程运行后保存跟踪数据,然后从用户的 角度,把要跟踪的数据项的起源数据项图形化的展现给用户,用户可以直接看到 流程数据项的变化过程。本文实现了x q u e r y 对跟踪数据的查询,当用户需要对 中山大学硕士论文 面向用户的科学工作流数据跟踪的研究与实现 跟踪数据进行分析的时候,通过自定义x q u e r y 查询,可以对跟踪数据进行灵活 的处理。 本文数据跟踪的实现基于k e p l e r 科学工作流系统。通过扩展k e p l e r 系统的 核心类,实现科学工作流运行时数据项的记录。数据流中数据项的变化是有前后 依赖关系的,通过依赖关系,如数据项依赖关系、调用依赖关系等,可视化的给 用户展示数据项在流程中的变化过程。x q u e r y 是一个标准。本文在科学工作流 客户端通过x q j ( x q u e r ya p if o rj a v a ) 与x q u e r y 引擎进行交互,实现对跟踪数据 的查询。 本文的研究是国家自然科学基金项目一“支持人工协作的服务工作流关键技 术研究”中关于数据流的前期研究工作。本文数据流的验证以及可视化数据跟踪 的实现对服务工作流在分布式环境下流程数据的处理,具有重要的意义。 关键词:科学工作流模型、数据流分析、数据跟踪、k e p l e r 科学工作流系统 中山大学硕士论文 面向用户的科学工作流数据跟踪的研究与实现 t i t l e :r e s e a r c ha n di m p l e m e n t a t i o n0 1 1u s e r - o r i e n t e d m a j o r : n a m e : d a t at r a c k i n go fs c i e n t i f i cw o r k f l o w c o m p u t e rs o f t w a r ea n dt h e o r y l uj i a s u p e r v i s o r :a s s o c i a t ep r o f y uy a n g a bs t r a c t w i t ht h ec o n t i n u o u sd e v e l o p m e n to fw o r k f l o wt e c h n o l o g y , a p p l i c a t i o n so f w o r k f l o wa r ee x p a n d i n g s c i e n t i f i cw o r k _ f l o w , an e wt y p eo fw o r k f l o ww h i c hi s d i f f e r e n tf r o mt h et r a d i t i o n a lw o r k f l o w , i sb e c o m i n gah o ts p o to ft h ec u r r e n t a c a d e m i cr e s e a r c h s c i e n t i f i cw o r k f l o wa p p l i e sw o r k f l o wt e c h n o l o g i e st ot h ef i e l do f s c i e n t i f i cr e s e a r c h , p r o v i d i n ge f f e c t i v em e t h o d sf o rl a r g es c a l ec o m p u t i n ga n d c o l l a b o r a t i v ec o m p u t i n gb a s e do nn e t w o r ki n f r a s t r u c t u r e s ,t op r o v i d ee f f i c i e n td a t a m a n a g e m e n ta n dl a b o r a t o r ya n a l y s i s t h em a i nc h a r a c t e r i s t i co f s c i e n t i f i cw o r k f l o wi s d a t a - c e n t r i ca n dc o m p u t i n g - i n t e n s i v e t h e r e f o r e ,d a t at r a c k i n g ( a l s oc a l l e dd a t a p r o v e n a n c e ) b e c o m e s a n u r g e n tr e q u i r e m e n to fs c i e n t i f i cw o r k f l o w d o m e s t i c r e s e a r c h0 1 1d a t at r a c k i n go fs c i e n t i f i cw o r k f l o wi sa l m o s tab l a n k , a n dt h er e s e a r c h e r s a b r o a ds t u d ym o r e ,b u tm o s to ft h e md o n ts u p p o r tb yw o r k f l o wm o d e l s ,l a c k d a t a f l o wa n a l y s i s ,i n t e r n a t i o n a ls t a n d a r d sf o rq u e r yi n t e r f a c ea n du s e r - f r i e n d l yv i s u a l t r a c k i n g i nr e s p o n s et ot h e s ep r o b l e m s ,t h i sa r t i c l ep r e s e n t sas c i e n t i f i cw o r k f l o wm o d e l w h i c hs u p p o r t sp r o c e s sn e t w o r kc o m p u t i n gm o d e l b a s e do nt h em o d e l sd a t a f l o w a n a l y s i sa n dt h eo p e n s o u r c ep r o j e c t , k e p l e rs c i e n t i f i cw o r k f l o ws y s t e m ,v i s u a l t r a c k i n ga n dx q u e r yq u e r yw i t hi n t e m a t i o n a ls t a n d a r d so fd a t ai t e m sa r er e a l i z e d , b r i n g i n gg r e a tc o n v e n i e n c e t os c i e n t i f i cw o r k f l o wu s e r s t h er e a l i z a t i o no fd a t at r a c k i n gn e e d st h es u p p o r to fr e l e v a n tm o d e l s p r o c e s s h i 中山大学硕士论文 面向用户的科学工作流数据跟踪的研究与实现 n e t w o r km o d e li so n eo ft h em o s tw i d e l yu s e d c o m p u t i n gm o d e l si ns c i e n t i f c w o r k f l o ww h i c hi sg o o df o rd a t a f l o wa n a l y s i s d a t at r a c k i n gg o e st h r o u g ht h r e ep h a s e : p r o c e s sd e s i g n ,w o r k f l o wr u n t i m ea n da f t e rw o r k f l o wr u n i nt h i sp a p e ld a t a f l o w a n a l y s i si sc a r r i e do u ti np r o c e s sd e s i g np h a s e ,t ov a l i d a t ed a t aa n o m a l i e s ,i n c l u d i n g d a t am i s s i n ga n dd a t ar e d u n d a n t a l g o r i t h m sf o rd a t av a l i d a t i o na r ea l s op r e s e n t e d t h ed a t ai t e m s ,s u c h 嬲m e t a d a t a , p a r a m e t e ra n dp r o c e s sd a t ai t e m ,a r er e c o r d e di n w o r k f l o wr u n t i m ea n ds t o r e da f t e rw o r k f l o wr u n a f t e rt h a lt h eo r i g i nd a t ai t e m sa n d t r a n s f o r m a t i o n sa r ed i s p l a y e dt ou s e r sg r a p h i c a l l y t h i sa r t i c l eh a sr e a l i z e dt h eq u e r y o ft r a c k i n gd a t ab yx q u e r y , p r o v i d i n gf l e x i b l ec u s t o mq u e r i e sf o ru s e r sw h e nm e y a n a l y z et h e s ed a t a t h er e a l i z a t i o no fd a t at r a c k i n gi sb a s e do nk e p l e rs c i e n t i f i cw o r k f l o ws y s t e m t h ed a t ai t e m sa r er e c o r d e di nw o r k f l o wr u n t i m eb ye x t e n d i n gt h ek e yc l a s s e so f k e p l e rs y s t e m d a t ai t e m si np r o c e s sh a v et h e i rd e p e n d e n c e s ,s u c ha sd a t a i t e m d e p e n d e n c y , i n v o c a t i o nd e p e n d e n c y ,e t c ,w h i c h u s e df o r d i s p l a y i n g i t e m t r a n s f o r m a t i o n st ou s e r sv i s u a l l y x q u e r yi sas t a n d a r d s c i e n t i f i cw o r k f l o wc l i e n t u s e sx q j ( x q u e r ya p if o rj a v a ) t oi n t e r a c tw i t i lx q u e r ye n g i n e ,a n dc a r r i e so u tt h e d a t aq u e r y t h ec o n t e n to ft h i sp a p e ri sp a r to ft h en a t i o n a ln a t u r a ls c i e n c ef o u n d a t i o n p r o j e c t :r e s e a r c ho nk e yt e c h n o l o g i e so fs e r v i c ew o r k f l o ws u p p o r t i n gh u m a n c o l l a b o r a t i o n ,i nw h i c ht h ee a r l ys t a g er e s e a r c ho fd a t a f l o w t h ed a t a f l o wv a l i d a t i o n a n dv i s u a ld a t at r a c k i n gi ss i g n i f i c a n tf o rd a t a f l o wa n a l y s i so fs e r v i c ew o r k _ f l o wu n d e r t h ed i s t r i b u t e de n v i r o n m e n t k e yw o r d s :s c i e n t i f i cw o r k _ f l o wm o d e l ,d a t a f l o wa n a l y s i s ,d a t at r a c k i n g , k e p l e rs c i e n t i f i c w o r k f l o ws y s t e m 论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独 立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论 文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文 的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:毖丝 e t 期:。蝉! 主:丝 学位论文使用授权声明 本人完全了解中山大学有关保留、使用学位论文的规定,即:学 校有权保留学位论文并向国家主管部门或其指定机构送交论文的电 子版和纸质版,有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆、院系资料室被查阅,有权将学位论文的内容编入 有关数据库进行检索,可以采用复印、缩印或其他方法保存学位论文。 学位论文作者签名:磁位 醐:呷岁肋凋 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 第1 章绪论 本课题来源于国家自然科学基金项目:支持人工协作的服务工作流关键技术 研究。本文主要关注工作流的数据流分析与数据跟踪的研究。 1 1 研究背景 目前,生物、医学、生命科学、地理科学等科学领域科学实验的研究面临着 海量数据处理的问题,这使得研究者不得不使用各种各样专业的程序来处理不同 的实验数据、管理实验数据,并进行实验数据的分析。科学工作流就是为了支持 科学家进行高效的数据管理和实验分析,将工作流技术应用于科学领域,并在网 络基础设施上进行大规模科学计算和协同研究的有效方法【i 】。 科学工作流是描述、执行和监控科学实验以及科学探索过程的一种工作流。 通过在工作流中组织和部署科学过程,提供高效的过程管理和资源共享,达到科 学实验过程的自动执行的目标【2 】。它与传统工作流有所不同,传统的工作流是指 整个或者部分过程在计算机支持下的全自动或者半自动化【3 】。科学工作流更加注 重计算与数据的分析处型4 1 ,它被广泛应用在生物科学中分析生物资料【5 1 、物种 分布预测【6 l 、推断生物种类【7 l ;医学中的神经学与核磁共振成像数据【8 】;环境科 学中的环境性能监控、气候模型、大气发现【9 】等众多领域。 科学工作流常常涉及大规模的科学计算,它以数据为中心,在不同的组织问 进行数据共享与传输。因此对数据流的分析已经成为科学工作流的迫切需求。传 统工作流以业务流程管理为中心,它主要研究流程的优化、动态任务的分配与人 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 工协作等,相对来说,数据流的分析不是传统工作流研究的最主要内容。相反, 科学工作流由于涉及科学实验,实验数据是必不可少的,并且是最为重要的内容。 数据的传输及其正确性为科学工作流流程的正确完成提供了保障。因此科学工作 流的管理是数据管理和流程管理并重的。 , 在科学实验中,实验数据影响着整个科学实验的成败。实验数据要能够被有 效的识别出来,并且在流程中传输。在传输过程中,数据项会被不断的派生,更 新,甚至有可能被改变,最终形成实验结果。研究人员对科学实验的分析要求能 够清楚的识别最终实验结果的数据项的含义、来源及其对最终结果的贡献,也可 能对实验中间或者最终结果提出问题。对数据项的跟踪的描述以及它到达数据库 的过程称之为数据跟踪f 1 0 】。它在数据流分析的基础上,解释数据的由来,提供 数据的派生历史,回答研究人员对实验数据提出的基本问题。 目前,科学工作流的数据跟踪问题已经被多个工作流项目所认可,但是还没 有哪个科学工作流系统能够有效的支持数据跟踪,最终准确的回答研究人员针对 实验数据提出的问题。本文通过科学工作流的模型,对科学工作流的数据跟踪问 题进行研究。 1 2 国内外对科学工作流数据跟踪的研究现状 在过去,传统数据跟踪的研究主要集中在数据库领域。它是随着数据视图的 维护与更新提出来的。视图数据跟踪主要指给定一个数据项,识别产生该视图数 据项的精确基表数据项集。当数据较大时,如有多个数据库,某些视图数据只有 当专家以修正或注释的形式标注数据的时候,才能使视图里面的数据更加有意 义。 传统的数据跟踪主要包含两重意思:w h e r ep r o v e n a n c e 和w h y p r o v e n a n c e 1 0 l 。分别指该数据来自哪些源数据;该数据是因为哪些源数据而产生 的,即哪些源数据对此产生做出了贡献。 如一个s q l 查询i l o : 2 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 s e l e tn a m e ,t e l e p h o n e f r o m e m p l o y e e w h e r e s a l a r y s e l e c t a v e r a g e s a l a r y f r o m e m p l o y e e 结果集里面的元组d = 要归功于e m p l o y e e 里面的每一个 元组,因此整个e m p l o y e e 就是d 的w h yp r o v e n a n c e 。但是d 总是来自e m p l o y e e 里面的一个或者几个元组,因此这几个元组就是d 的w h e r ep r o v e n a n c e 。 源信息的有用性与在一定的域内的收集粒度有关。需求的范围从数据库里面 的元组和属性到运行一个流程或者实验所产生的文件等等。收集和存储这些源信 息的开销恰恰和它的粒度相反。在粒度和格式上近来有人使用抽象数据集提供更 加灵活的方法。 文献 1 1 1 对数据跟踪问题进行了一个分类,如图1 1 所示【1 1 1 。可以看出,数 据跟踪问题主要包括五大类:数据跟踪的作用、类型、表示、存储与传播 ( p r o p a g a t i o n ) 。科学工作流中的跟踪问题是面向数据的跟踪,而传统工作流的跟 踪问题是面向流程的跟踪。 图l - l 跟踪的分类 从数据跟踪的模式表示的角度来看,数据跟踪主要方法有以下几种: ( 1 ) 注释 注释【1 2 1 是把由派生历史构成的元数据收集起来作为源数据和流程的注释与 描述,与数据一起存放在数据库中,用于解释数据的来源。当前使用注释方法的 大部分系统都采用x m l 来表示跟踪信息,也有少数系统采用本体论的方法。 ( 2 ) 反向 3 中山大学硕士论文 面向用户的科学工作流数据跟踪的研究与实现 反向【1 2 】方法主要应用逆向查询( q u e 珂i n v e r s i o n ) 或者逆向函数,由结果数据 跟踪其源数据。反向是在需要用到数据跟踪的时候才进行数据分析,这主要是早 期用于视图维护与更新提出来的。该方法常用于以下三种视图:s p j 视图( 选择一 投影一连接) ,a s p j 视图( 带有集合操作的s p j ) 和带有集合操作的a s p j 视图。 ( 3 ) 集成对象代理数据库 该模型主要使用对象代理数据库t o t e m 作为科学工作流的运行环境,提供 科学工作流所必需的流程设计和执行功能,采用类似于s q l 语言的方式来执行、 管理和监控科学工作流,并提供数据跟踪的功能。如图1 - 2 所示【l 】。 图l - 2 集成对象代理数据库的科学工作流服务框架 工作流设计主要用于定义工作流模式。模式定义通过对象代理数据库中的类 和代理类定义工作流中不同科学任务的输入和输出,通过任务输入输出间的对象 代理关系实现工作流的自动执行。而对流程的建模,它仍然使用传统工作流模式, 包括顺序、并行分支、单路选择与多路选择等。该模型采用数据驱动的方式,当 要执行科学任务的时候,它调用外部的科学程序进行科学计算,将任务的执行转 化为对数据库插入和更新操作。外部科学程序被封装为w e b 服务并在u d d i 上 进行注册,通过查询服务的方法来构造和执行工作流。它采用代理类把任务输入 输出数据建模成输入数据类和输出数据类,然后利用对象代理数据库中内部对象 问双向指针实现数据跟踪。使用双向指针的方法,不但可以节省逆向查询所需要 的时空开销,且能找到产生该数据的数据源以及产生该数据所经历的实验过程。 ( 4 ) 依赖关系图 依赖关系图 1 3 1 主要采用读写模型,对工作流数据项的各种读写事件进行记 4 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 录,写在日志中,然后根据日志推导出各种依赖图,由依赖图来提供各种数据对 象的跟踪信息。这种方法实质是对工作流日志的挖掘,来提供跟踪信息。它的操 作是在工作流执行过程中对事件与操作进行记录,在工作流执行完毕之后再进行 分析。文献1 1 3 在读写模型的基础上增加了对状态重置事件的记录,采用面向用 户的模型,实现科学工作流的数据跟踪。通过对读、写以及状态重置事件的记录, 该模型可以从日志文件中推导出托肯( t o k e n ) 依赖图,对象依赖图以及调用依赖 关系图。根据这些依赖关系图,可以回答研究人员提出的一些简单问题,对数据 的操作进行查询跟踪。 除了以上几种主要方法之外,在技术领域,随着基于b p e l 的服务组合的工 作流过程建模的发展,数据跟踪在面向服务的网格计算环境下也逐渐得到应用 1 1 4 5 1 。s o a 的发展以及相关标准的完善,使得异构系统之间的通信与数据传输 变得更加容易。传统的软件系统主要关注软件本身的安全性、可靠性等,而在 s o a 系统还需要动态的关注数据的路由,以及它的影响,如数据跟踪等【l 叭。 在应用领域方面,数据跟踪问题已经被多个科学工作流项目所认可,包括 c h i m e r a ,m y g r i d ,c m c s ,e s s w ,t r i o 等。 c h i m e r a 1 7 】管理协作环境下数据对象派生和分析,并且以数据派生步骤的形 式来收集源信息。它使用一个面向过程的模型来记录源信息,用户使用虚拟数据 语言( v d l ) 来构建工作流。v d l 1 5 , 1 9 符合表示数据产物的模式,这个模式可以作 为抽象的数据集和具体化的拷贝。数据集可以是文件、表格和各种粒度的对象。 可计算的过程模板叫做转换,是文件系统里面的一些脚本。参数化的转换实例叫 做派生。这些派生连接在一起形成消耗并产生数据产物的工作流。工作流执行的 时候,自动产生派生的引用对象,注释流程运行时的信息。引用对象把输入输出 数据连在一起,它们构成一个表示源信息的注释模式( s c h e m a ) 。c h i m e r a 不收集 语义信息。c h i m e r a 里面的谱系关系通过v d l 映射成数据库里面的查询,然后 通过虚拟数据目录( v d c ) 服务来访问数据。而v d c 存储的是元数据,派生信息 可以在v d c 里面查询。例如可以嵌套的查询产生某个数据集的元数据。c h i m e r a 里面源信息的一个比较创新的使用就是计划并估算再生数据集的成本。当需要再 生数据集的时候,跟踪信息可以引导工作流选择一个优化资源分配方案。 m y g i r d 通过提供中间件来支持生物学的实验,在网格环境下对工作流进行 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 建模【2 0 1 。m y g r i d 服务包括资源发现、工作流执行服务、元数据和跟踪信息管理。 m y g r i d 采用面向服务方法来建模。使用x s c u f l 语言描述工作流,采用t a v e m a 引擎。一个工作流执行服务的源信息日志包括调用的服务、参数、开始结束时间、 使用的数据及其派生、本体描述。该日志文件可以反向推理中间数据和最终数据 的跟踪信息,但是反向推理需要用户使用语义描述注释工作流和服务。其语法要 使用x m l ,r o eh t m l ,并使用标注模式来描述跟踪的元数据。m y g r i d 信息库 数据服务是建立在关系数据库上的用于存储元数据的库。很多知识发现的方法都 使用了数据跟踪。例如:r d f 类型的语义跟踪信息可以看作是使用h a y s t a c k 语 义网浏览器的标号图。在一起构建数据跟踪的语义网中的项目中( c o h s e ) ,有语 义标注的跟踪日志文件被使用本体推理服务连接在一起,然后显示一个含超链接 的网页。 c m c s 项目是一个用于协作的信息学开发包,用于交叉学科的基于元数据的 数据管理【2 1 1 。它使用科学注释中间件( s a m ) 来存储u r l 引用文件和数据集【2 2 1 。 它是一个面向数据的模型。c m c s 使用一个注释模式来关联s a m 里面文件的 x m l 元数据属性,并且通过一个分布式授权和版本接口来管理它f f ( w e b d a v ) 。 文件形成粒度的层次,所有的资源,如数据对象、流程、w e b 服务都被建模成文 件。通过s a m 里面的x l i n k 引用,把数据文件的x m l 属性,按照相关语义关 联到派生流程里面去。c m c s 使用x s l t 把各种混杂的元数据模式映射到一个标 准的d c 元数据项。c m c s 不能自动的从工作流执行中收集跟踪信息。数据文件 和元数据需要科学家通过一个门户网站手动输入。跟踪信息可以使用一个通用 w e b d a v 查询。还可以把跟踪信息导出到r d f ,使语义a g e n t 可以推断资源之间 的关系。 e s s w ( 地球系统科学工作平台) 【2 3 】是一个用于地球科学的元数据管理数据 存储系统。e s s w 使用一个脚本模型进行数据处理。脚本的引用序列是一个d a g , 通过一个主工作流脚本形成。数据的消耗和产生都是通过脚本完成。因此脚本也 是工作流执行的一部分。工作流脚本使用元数据i d 来连接连续脚本中的数据流, 从而形成所有数据产物的跟踪,并且用注释描述。通过使用父子链来连接这些脚 本和数据,e s s w 可以在数据和面向流程的谱系之间取得平衡。 t r i o 刚主要在数据仓库里面跟踪数据的信息。它使用数据库的反向查询模型 6 中山大学硕士论文 面向用户的科学工作流数据跟踪的研究与实现 自动的决定查询视图里面元组的源数据,是一种面向数据的跟踪模式。语义元数 据没有被记录,而且也没有解决可测量性。 科学工作流主要应用于科学领域。科学家通常都是从一系列的问题开始,然 后观察现象,收集数据,提出假说,进行测试,否定或者修改假说,重复流程。 在整个过程中会用到各种各样的数据,最后取得一系列新的问题,理论或者定理。 在大部分情况下,科学家会使用不同的参数对实验进行调整,不断重复实验,以 探索特定科学问题的性质。因此,必须提供导致最终实验结果的详细步骤及语义 信息,而这些信息的取得又需要对数据和过程的源信息进行收集。科学实验的结 果通常需要被重复执行以验证结果的正确性。数据跟踪能有效对实验的过程以及 结果数据进行解释,使得他人更容易明白整个流程的运行以及数据的产生过程。 综合以上分析,数据跟踪的方法与在系统中的应用存在以下不足: ( 1 ) 注释方法虽然有着广泛应用,但是它不能为细粒度的存储数据提供良好 的存储规模,因为记录完整的派生历史可能超过数据本身所需要的存储空间i l j 。 同时,该方法对用户友好的可视化跟踪支持不够。 ( 2 ) 反向的方法不会像注释的方法那样面临存储空间的问题,但是每次查询 源数据的时候,它要产生一个逆向查询函数或逆向查询去计算派生数据,而且不 是所有的查询函数都有逆函数,当数据量很大的时候,查询的效率是很低的。 ( 3 ) 在语义支持方面。集成对象代理数据库的方法中,由于采用双向指针, 对注释与反向产生的问题有一定的改善,但是对数据项语义信息的支持灵活度不 够,当要增加语义信息的时候,它需要在它的代理类中增加类的属性,每次都对 代理类进行修改,降低了可用性。而基于依赖关系图的方法虽然可以快速的进行 数据跟踪,但是它缺乏良好的模型支持,在查询方面有很大的局限性。 ( 4 ) 在保证数据质量与可靠性方面。以上应用项目都没有在工作流执行前, 对数据项关系的正确性进行验证,以减少工作流运行时的错误。 ( 5 ) 在跟踪数据查询方面,现有的方法大多数与具体领域相关,且缺乏良好 的理论支撑和通用的查询接口。 本课题针对以上问题,对依赖关系图的方法进行扩展,加入工作流执行前的 数据流分析,对数据跟踪问题进行研究,可视化的显示跟踪数据起源信息,并提 供一种统一的查询方法,进一步保证数据的质量,提高跟踪查询的效率和实用性。 7 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 1 3 论文研究的意义和目标 国内对科学工作流的研究相对较晚,而对科学工作流的数据跟踪的问题的探 索几乎是一片空白,目前只有文献【l 】使用集成对象代理数据库的方法对科学工作 流数据跟踪问题进行研究。在国际上i e e et r a n s a c t i o n 将在2 0 0 9 年举办一个关 于科学工作流的专刊,充分证明了科学工作流的研究在学术界得到认可。本文的 数据跟踪的研究对促进国内对科学工作流及其数据流的研究有重要的意义。 ( 1 ) 识别实验数据,解释实验数据的由来。 以数据为中心的科学工作流不同于以业务流程为中心的传统工作流。在科学 实验中,了解数据项在流程中的变化过程,才能很好的解释实验结果。特别是在 跨组织的实验流程中,组织的研究人员也许并不熟悉其他组织的前期工作及数据 定义。当获取结果数据时,如果对数据项的来源不了解,将难以完成后续的实验。 ( 2 ) 保证数据质量以及数据的可靠性。 数据流的分析是科学工作流中的数据跟踪重要部分。通过对数据流的分析, 可以检测数据项的异常,如数据项冲突、冗余、缺失、不匹配与不一致等瞄】。 在科学实验的流程中,对数据项的每一个操作都有可能影响最终的实验结果,而 数据项有可能是最终结果的一部分,也有可能是流程的中间数据。如果数据项没 有被正确的初始化,如参数类型错误、初始化缺失、延迟初始化等,将会导致数 据异常。对数据流的分析可以保证数据的质量以及数据的可靠性。 ( 3 ) 错误诊断以及核实实验结果的有效性。 相对于传统工作流,科学实验涉及大量数据,不同的人对实验流程的设计使 得结果可能产生很大的差异。对数据流的分析可以检验数据项在流程中的异常, 但不能检测实验数据本身的错误。当科学实验的流程跑完之后,如果研究者对某 些实验数据产生了怀疑或者认为是错误的数据,就需要对实验数据进行诊断。根 据该数据的派生历史,向上追溯,直到找出产生该错误数据的地方为止。当产生 某数据项的实验步骤发生改变时,也应该能够根据数据的派生历史跟踪实验进 8 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 程,以确定需要重做哪些实验步骤以便更新实验结果,确保实验结果的有效性。 ( 4 ) 有利于知识发现。 在数据跟踪中建立的数据族谱图,可以清楚的了解数据项的隶属关系,追踪 数据出错的责任。然而科学实验中出错或者异常的数据往往导致新的科学发现。 数据跟踪可以了解源数据信息,为解释数据提供上下文语境,有利于知识的发现。 对科学工作流数据跟踪的研究,不仅对数据管理有重大意义,且对整个工作 流领域的数据流分析有重大的参考意义。数据流在以数据为中心的科学工作流中 特别重要,但它不可避免的存在于其他类型的工作流中,如传统的基于p e t r i 网 的工作流,基于服务组合的工作流等【2 6 2 7 1 。在分布式环境下,工作流的数据流问 题日益重要,如何保证数据质量与可靠性,解释数据的由来,实现商业业务数据 的审计跟踪,从这个角度来说,数据跟踪的研究对所有工作流系统都有现实意义。 1 4 本文的组织结构 本文正文部分共分为六章。 第一章,绪论。阐述论文研究背景,本课题国内外研究现状以及研究的意义。 第二章,主要介绍科学工作流与传统工作流的异同及科学工作流数据跟踪的 相关技术与理论。科学工作流建模方法的介绍,为数据跟踪的模型支持打下基础。 第三章,详细介绍支持数据跟踪的科学工作流建模方法,数据流分析与数据 跟踪方法,并提出数据验证算法,跟踪数据记录方法等。为后文的实现打下基础。 第四章,根据第三章提出的数据跟踪方法,扩展k e p l e r 科学工作流系统, 提出数据跟踪的总体实现方案。 第五章,数据跟踪的详细设计与实现。扩展了跟踪数据的类型,定义了跟踪 数据的记录格式。分别实现了跟踪数据的记录、跟踪数据的处理和展现、跟踪数 据的查询三大部分。并给出了数据跟踪实现的例子。 第六章,总结与展望。总结了本文的主要贡献,以及将来的进一步研究工作。 本文的主要工作集中在第三章和第五章,介绍了主要的方法以及实现。 9 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 第2 章科学工作流数据跟踪相关技术及理论 科学工作流与传统工作流有着很大的区别,使得科学工作流的数据跟踪比传 统工作流的数据跟踪有着更为重要的意义。科学工作流数据跟踪相关技术主要包 括x m l 技术,w e b 服务技术,语义技术等。采用x m l 可以灵活的实现对跟踪 数据的存储,w e b 服务技术可以获取跟踪数据或者实现跟踪数据的共享。跟踪数 据的展现常通过图论的有向图来实现。 2 1 科学工作流与传统工作流的异同 本文所指的传统工作流主要是面向业务流程的工作流。它出现于2 0 世纪8 0 年代,是使用信息处理工具,实现业务流程的自动化或者半自动化操作,从而取 代传统业务流程中以纸张的形式传递相关的文档资料。最初的工作流系统,如 f i l en e t 公司在1 9 8 4 年推出的w o r k f l o wb u s y n e s ss y s t e m 和v i e ws t a r 公司推出的 v i e w s t a r ,主要是面向过程的系统集成技术【2 引。随着计算机技术的飞速发展,分 布式计算技术,w e b 服务技术也被应用到工作流里面来,出现了网格工作流,服 务工作流等。工作流应用的复杂化,使得工作流领域的一个重要方面:业务流程 管t 里( b u s i n e s sp r o c e s sm a n a g e m e n t ,b p m ) ,得到了长足的发展,b p m 涉及业务流 程改进( b p i ) 、业务流程重组( b p r ) 、过程建模、流程优化等。工作流管理联盟 ( w f m c ) 把工作流定义为: “工作流是一类能够完全或者部分自动执行的经营过 程,它根据一系列过程规则、文档、信息或任务,在不同的执行者之间进行传递 与执行”【2 9 1 。 l o 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 科学工作流目前在国际上暂时没有标准的定义,但是科学工作流的许多特点 已经被业内所认可。综述大量的科学工作流的论文,科学工作流的与传统工作流 的异同点如表2 1 所示。 表2 1 科学工作流和传统工作流的异同 科学工作流传统工作流 相同点 包含建立期,运行期 控制流模型 协助支持 异常与错误处理 服务质量 安全问题 全局管理 异同点 高度动态、灵活的流程与执行环境较为固定的流程与执行环境 强调计算与数据处理更加强调业务流程 更少人工交互,短暂服务管理更多的人工交互 分布式环境下资源的动态分配与调度可支持分布式环境 领域依赖性高通用性更强 跨组织协作更多应用在单个组织内部 在科学工作流中,由于科学实验的需要,常常要使用一些数据中心提供的数 据,如圣地亚哥超级计算机中心提供的数据服务【3 0 】、s i p r e s s 提供的基因序列 分析w | e ba p i 3 1 】与k n b ( 生物复杂性知识网络) 提供的数据查询服纠3 2 l 等,科 学工作流通过w e b 服务组件、数据源组件把从远程获取的数据集成在流程里面, 探索科学实验的规律。使用一些基础数据库提供的数据是科学工作流进行科学实 验的一个普遍需求,而传统工作流更多是组织内部的、非共享的数据。出于对大 量数据计算与处理的需要,科学工作流系统本身还会集成许多数据计算与分析的 模型,如科学工作流领域著名的k e p l e r 系统,就是建立在加州大学伯克利分校 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 的p t o l e m yi i 模型之上,可以很方便的使用本身所具备的数据分析模型,或者集 成外部数据处理程序和组件,如m a t l a b 插件,c l u s t a l w ,p a u p 等【3 3 1 。 2 2 各种科学工作流建模方法 科学工作流的建模目前没有像w f m c 对传统工作流制定的元模型和过程模 型那样得到广泛认可的标准。l l k a y 等人在2 0 0 5 年底发表的“科学工作流管理与 k e p l e r 系统”0 4 】,奠定了科学工作流的基础,成为科学工作流领域引用率最高的 文献。该文总结了科学工作流的通用需求,如表2 2 所示,同时文献【3 5 】也采用 了几乎一样的标准。 表2 - 2 科学工作流需求 需求注释 r l :无缝接入资这是一个公共的需求,并且通过w e b 服务、服务调用为远程服务执 源和服务行与远程数据库访问提供了一个简单的机制。 r 2 :服务组合与通过组合一些简单的服务来执行复杂的任务。设计与领域无关的、可 重用,工作流设计重用的组件来支持工作流原始的开发。 r 3 :可扩展性许多科学工作流涉及大量的数据,需要高端的计算资源,如使用计算 机集群来运行大规模的并发作业。为了支持这种数据密集型与计算密 集型的科学工作流,提供一些支持网格中间件的界面也是必需的。 r 4 :独立执行一个需要长时间运行的工作流,应该可以使得流程在一个单独的远程 服务器上进行后台运行,而不用总是保持与客户端应用程序的连接。 1 1 5 :可靠性与容某些计算环境的可靠性可能不够,如包含w e b 服务的流程,可能会 错 由于w e b 服务接口的改变,访问该w e b 服务人数的增多使得w e b 服 务反应缓慢,导致流程运行的失败。科学工作流应该要有弹性机制使 流程可以运行在不可靠的环境下。 r 6 :用户交互 许多科学工作流需要用户的决策才能继续运行。如:需要用户对中间 1 2 中山大学硕士论文面向用户的科学工作流数据跟踪的研究与实现 结果做一个决策,重新连接独立执行的工作流等。 r 7 :智能化重运在科学流程里面某些重要的用户交互就是改变流程的某个参数,重新 行 观察实验结果。如果该流程运行一次的时间很长,则可以通过智能化 的重运行:只运行与该改变的数据项有关的部分流程,提高效率。与 面向业务流程的工作流不一样,在面向数据流的科学工作流里面,数 据项的依赖关系是明显的。 r 8 :智能化语义在工作流设计的过程中,通过数据项的语义信息,指出哪些数据项或 链接 者数据集符合哪些工作流,但是由于领域相关性,捕抓一些数据项的 语义信息比较难,哪怕有对应的元数据,也很难做出最充分的使用。 本体论的方法可能会给科学工作流提供比较有用的语义类型系统。 r 9 :数据跟踪与传统实验室做实验得出的实验结果应该可再现一样,科学工作流

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论