




已阅读5页,还剩46页未读, 继续免费阅读
(计算机软件与理论专业论文)面向知识发现的信息源集成技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 近来,以i s y s 、m o b y 和州g r i d 为代表的面向知识发现的信息源集成方法 开始探索一种新的集成架构,使用户能够更好的利用现有的数据和服务,对用一 得到的数据进行深入的分析。 面向知识发现的信息源集成方法主要考虑以下两种需求: 能满足用户科学探索式的应用需求,即能帮助用户方便的根据当前的数 据确定下一步可用的分析工具。 支持采掘式的数据处理方式,即面向目标多步骤的高通量自动处理模式。 虽然现有系统i s y s 、m o b y 和叫g r i d 对于科学探索式需求有一定的处理能 力,但它们对于采掘式的处理则显得相对较弱。其中,1 s y s 不支持采掘式应用, 而m o b y 和”g r i d 都需要手动的生成工作流描述来完成相应的任务。问题的关 键就在于现有方法缺乏一种灵活的集成框架以同时支持探索式与采掘式工作方 式。 本文的目标在于给出一种面向知识发现的数据源集成技术,解决上述问题。 该技术包括以下几个方面: 给出了一种全新的基于本体和w e b j j i 务的信息集成框架h a r m o n i o u s 。该 框架以本体作为全局参照体系,w 曲服务被动态地注册于本体之上,使 得后续的w 曲服务合成能够借助本体概念间的关系有效地自动完成。 给出h a r m o n i o u s 中的两个关键算法: _ 带有节点继承约束图中有效的路径搜索算法。该算法利用本体概念 体系间的继承属性,降低复杂度,动态发现给定图中任意两个节点 属性问的候选路经。应对探索式集成应用。 一查询路径的排序算法。算法给定图中两个节点,能够选择最优路经。 以此来帮助用户选择查询出的所有可能路径,自动合成相应的w e b 服务,应对采掘式应用。 提出了一个本体约减算法,根据应用定制全局参照知识体系,提高算法 的效率。使得h a r m o n i o u s 对于本体概念数量和注册w 曲服务的增大,依 然保持方法的有效性。 关键词:信息源集成、知识发现、查询路径推荐、本体约减 中图法分类号:t p 3 1 1 1 3 a b s t r a c t n o w a d a y s , s e v e r a l k n o w l e d g e d i s c o v e r y - o r i e n t e d i n f o r m a t i o n i n t e g r a t i o n s y s t e m s ,s u c ha si s y s ,m o b ya n d g r i d ,h a v es t a r t e ds e a r c h i n gf o ran e w i n t e g r a t i o nf r a m e w o r k ,w h i c hi sm e a n tt oh e l pu s e r sa n a l y z ea n dd e p l o yt h eo b t a i n e d i n f o r m a t i o nw i t hc u r r e n td a t aa n ds e r v i c e sm o r ed e e p l ya n de f f i c i e n t l y f o ra k n o w l e d g e - d i s c o v e r y o r i e n t e d i n f o r m a t i o n i n t e g r a t i o ns y s t e m ,t h e f o l l o w i n gt w or e q u i r e m e n t ss h o u l db et a k e ni n t oc o n s i d e r a t i o n s u p p o r te x p l o r i n gm o d eo fi n f o r m a t i o nm a n a g e m e n t w h i c hw i l lh e l pu s e r s d e t e r m i n et h en e x ta n a l y s i st o o la c c o r d i n gt ot h ec u r r e n td a t a s u p p o r td a t am i n i n g ,t h a ti s ,i ts h o u l dp r o v i d eag o a l o r i e n t e da n da u t o m a t i c i n t e g r a t i o na p p r o a c h f o rt h ec u r r e n ts y s t e m ss u c ha si s y s ,m o b ya n d g r i d ,t h e yh a v es u p p o r t e d t h ee x p l o r i n gm o d ea p p l i c a t i o n ,b u tt h em i n i n ga b i l i t i e sa r el i m i t e dt os o n i ce x t e n t i s y sd o e s n tp r o v i d es o l u t i o n sf o rm i n i n ga p p l i c a t i o n ,w h i l em o b ya n d ”7 g r i dn e e d m a n u a lw o r k f l o wd e s c r i p t i o nt oc o m p l e t et h er e l a t e dw o r k t h u s ,t os u p p o r tb o t ht h e e x p l o r i n gm o d ea n dt h em i n i n gm o d e ,am o r ef l e x i b l ei n t e g r a t i o nf r a m e w o r ki s r e q u i r e d t h ef o c u so ft h i st h e s i si st or e s e a r c ho nt h ek n o w l e d g e - d i s c o v e r y o r i e n t e dd m a i n t e g r a t i o nt op r o v i d eas o l u t i o nt ot h ea b o v ep r o b l e m s o u rc o n t r i b u t i o n sc a nb e s u m m a r i z e da s : w e p r o p o s e af l e wi n f o r m a t i o ni n t e g r a t i o nf r a m e w o r kh a r m o n i o u s w h i c hi s b a s e do no n t o l o g ya n dw e bs e r v i c e s t h i sf r a m e w o r ku s e so n t o l o g ya sg l o b a l v i e ws ot h a tw e bs e r v i c e sc a nb ed y n a m i c a l l yr e g i s t e r e do nt h eo n t o l o g y t h u st h r o u g ht h er o l e so f o n t o l o g yc o n c e p t s ,t h ec o m p o s i t i o no f w e bs e r v i c e s c a nb ee f f i c i e n t l ya n da u t o m a t i c a l l yc o m p l e t e d t w o k e ya l g o r i t h m sa b o u th a r m o n i o u s a r ep r o v i d e d - p a t h ss e a r c h i n gi ng r a p hw i t hn o d ei n h e r i t a n c ec o n s t r a i n t sa l g o r i t h m , w h i c hm a k e su s eo fi n h e r i t a n c ea t t r i b u t e si nt h eo n t o l o g yc o n c e p t h i e r a r c h yt of i n do u tt h ec a n d i d a t ep a t h sb e t w e e n t w oa t t r i b u t en o d e si n t h eg r a p hd y n a m i c a l l y t h i sa l g o r i t h mp r o v i d e sa ne f f e c t i v es o l u t i o nt o e x p l o r i n gm o d ea p p l i c a t i o n - c a n d i d a t ep a t h so r d e r i n ga l g o r i t h m w h i c hc a nf i n do u tt h eo p t i m u m p a t hb e t w e e nt h et w og i v e nn o d e s i nt h eg r a p h t h u su s e r sc a l ls e l e c t 2 f r o mt h er e s u l t e dp a t h st oa u t o m a t i c a l l yc o m p o s et h ec o r r e s p o n d i n gw e b s e r v i c e s ,s ot h a tm i n i n gm o d ea p p l i c a t i o nc a nb es u p p o r t e dw e l l w ea l s op u tf o r w a r d sa no n t o l o g yr e d u c t i o na l g o r i t h m i tc a l lt a i l o rt h eg l o b a l r e f e r e n c es y s t e ma c c o r d i n gt op r a c t i c a la p p l i c a t i o n ,s ot h a th i g he f f i c i e n c y c a r lb er e t a i n e di n d e p e n d e n to f t h en u m b e ro f o n t o l o g yc o n c e p t sm a dt h es i z e o fr e g i s t e r e dw e bs e r v i c e s k e y w o r d s :i n f o r m a t i o ni n t e g r a t i o n ,k n o w l e d g e d i s c o v e r y , s e a r c hp a t h r e c o m m e n d a t i o n ,o n t o l o g yr e d u c t i o n c l a s s i f i c a t i o nc o d e :t p 31 1 13 第一章引言 第一章引言 1 1 数据源集成背景 随着i n t e m e t 的高速发展,网络共享信息资源的数据量也急剧增大,这为棚 关领域的研究和应用起到了极大的推动作用。但同时,信息资源数量的快速增长 也给研究工作带来了新的困难和挑战。首先众多信息资源如何集成与互操作,其 次如何通过现有大量数据资源自动的探索新的知识。 事实上,尽管出现了大量的信息资源,但其中的绝大多数资源各有侧重,关 心的问题比较单1 ,范围过于狭窄,提供的服务相对有限。为解决需要多个信息 资源的协作爿能处理的重大问题,相关领域如生物信息学的工作者们不得不自己 去发现相关的信息资源,了解各自的使用方法与限制,使用不同的工具和协议与 之交互,汇集表达不一的处理结果,得到最终的结果。 但这样的工作无疑给研究工作带来了极大的不便,严重阻碍了相关领域研究 和应用的有效开展。因此如何整合这些种类繁多、结构复杂的专业数据,已成为 现代科学进一步发展的关键问题之一。 例如在生物信息学方面,s c i e n c e 杂志在【1 中谈到了在生物信息学领域数据 集成的必要性,随后又在 2 ,3 】阐述了用基于数字图书馆的方案集成生物信息学 数据源,提高互操作性。可见,信息资源的集成和互操作变得越来越重要,相关 关键技术的研究和工具系统的开发迫切需要计算机领域尤其是数据管理研究领 域的参与和帮助。 1 2 现有的数据源集成方法 智能信息集成( i n t e l l i g e n ti n f o r m a t i o ni n t e g r a t i o n ) 【4 ,5 】是近年来数据管理研 究领域一个活跃的话题。这一问题的产生源于分布式数据源的多样性,即建立数 据源时使用的技术平台、语言、表达的多样性。这种多样性直接导致了数据源异 构性( h e t e r o g e n e i t y ) 的产生。 总体而言,除了实现的技术平台异构性以外,异构性问题可以划分为三类: 语法上的异构性。即对数据信息的表达格式各不相同,常见的的格式有 x m l 、图形等。 结构上的异构性。即数据存储模式的不同。这将导致对数据源访问方法 第一章引言 存在着巨大差异。 语义上的异构性。对于某一领域的知识,可能存在很多数据库对其进行 描述。而这些数据库之间因为自治性又缺乏统一的标准,这导致语意表 达也存在着较大的差异,这给不同数据库之间语意上的互相理解带来了 障碍。 数据集成是对各种异构数据提供统一的表示、存储和管理,这些功能在异构 数据源集成系统中实现。数据集成屏蔽了各种异构数据问的差异,为用户提供一 个访问异构数据源的统一接口,使用户不必考虑数据模型的异构性、数据抽取以 及数据合成等问题。因此集成后的异构数据对用户来说是统一的、无差异的。简 要地说,异构数据源集成就是在一个确定领域中,集成其存在的异构的和自治的 数据源,使用户感到所查询的数据都具有单一的模式且存储在单个数据源中。 最初出现的集成系统是一些基于链接集成系统,这些系统通常是使用c g i ( c o m m o ng a t e w a yi n t e r f a c e ) s 1 1j a v as e r v e l e t 来对数据库进行查询、调用相应的分 析工具或对文件进行查询。这种方法最初被广泛使用 6 ,7 ,8 ,9 ,1 0 ,1 1 。但是他们也 存在一些问题。首先,虽然有些系统允许用户一个程序的输出结果作为另一个程 序的输入,而不用考虑输入输出在格式上的异构性,他们并没有很好的解决数据 的异构性问题,如果需要添加一个数据源,就需要作对所有其他数据源的映射, 这种方法将大大降低数据集成的可扩展性。 随之出现基于数据的集成,这种方法主要面向对数据的访问,不考虑对数据 的分析和显示。这类集成主要有以下两类方法: 建立数据仓库( d a t aw a r e h o u s e ) 。在该方案中需要将分散的数据库复制 到本地服务器,用户应用程序访问的数据直接来自予数据仓库。用数据 仓库进行集成的优点是访问速度较快且便于管理,但它的缺点是需要不 断的更新数据仓库中的数据,随着数据的增多,成本迅速上升,而且当 有新的数据源加入时,系统的可扩展性较弱,往往要做较大程度的改动。 建立联邦数据库( f e d e r a t e dd a t a b a s e ) 。在该方法中用户得到的数据直接 来自于各远程数据库,服务器的主要任务是将查询进行分解,并将分解 后的查询转换成其它自治数据库可以访问的方式,对自治数据库进行查 询,合并返回结果。同时出现了提高数据交换和互操作性能的中间件技 术以及m e d i a t o r - w r a p p e r 结构 】2 ,1 3 。 由于共享数据量越来越多,所以现今大部分集成系统使用的是联邦数据库的 方法。这种方法般通过用户界面获得用户的查询请求,将其传向中帕j 层 m e d i a t o r 。m e d i a t o r 作为一个全局的模式,分析查询请求,将其转换成若干予查 询,并将子查询传递至w r a p p e r 层。w r a p p e r 实现各数据源数据格式的透明性。 第一章引击 w r a p p e r 负责将子查询转换成各数据源所对应的数据格式并与各数据源进行交 互。当子数据源的结果返回时,w r a p p e r 将其转换成m e d i a t o r 中的统一格式。 m e d i a t o r 再根据原始的查询请求合并各子查询结果返回给用户。m e d i a t o r 能提 供一个集成的数据模型,那么用户不必关心特定数据源的数据模型,只需用查询 语言对集成的数据模型进行查询。另外,由于查询语占可以是描述性的,用户彳i 必理解内部的查询分解机制,使查询可以独立地进行优化。典型的系统如 d i s c o v e r y l i n k f l 4 】、k 2 1 5 等集成系统。 虽然上述的系统可以集成一些异构的数据,但是这些数据的获得需要科学家 完全了解中间模式,生成由中间模式描述的查询语句。系统并不了解这些数据州 的语义联系。为了解决语义问题,引入了本体作为这些集成系统的中间模式。用 户只需要给出输入条件和输出条件,系统将自动的根据本体的信息,生成一个查 询规划,对数据源进行查询并返回结果。t a m b i s 1 6 和b a c i i s 1 7 是这类系统 中较成功的例子。其中t a m b i s 系统由曼彻斯特大学开发。t a m b i s 中用到了领域 本体t a o ( t a m b i so n t o l o g y ) 1 8 ,提高了集成系统的数据源透明性。用户在 语义层次上与t a o 交互,而系统则与具体的数据源交互。t a m b i s 运用g r a i l 语 言作为描述逻辑建立本体,其中间层借用了k l e i s l i 1 9 的大部分工作,修改后 在t a m b i s 称为b i o k l e i s l i 。 然而,随着数据资源数量的迅猛增长,上述的数据集成方法也已不能满足研 究人员的要求。首先,研究人员除了要找到数据以外,还需要对数据进行一些深 入分析。而现今网络上的这种分析工具也越来越多,如何把这些分析工具也集成 到系统中成了研究人员关注的话题。其次,由于科学家通常是通过反复的执行某 些固定步骤来预测新的知识。因此,他们更希望自己能够制定一个工作流,让系 统依次按照这个工作流中的每一个步骤,自动的去查找已集成的数据源,发现新 的知识。即支持对数据的探索式和发掘式处理。 这些需求导致了一种新的集成方法的出现,即面向知识发现的集成方法。这 种方法把数据源看成是一种提供数据的服务,使它和对数据的分析工具无差别的 集成在一个系统中。系统把服务之间传递的数据包装成统一的格式,便于服务的 自动识别。通过这种方式来解决服务输出数据之间存在的异构性,方便用户对数 据进行分析。 使用这种方法的系统如i s y s 2 0 ,2 1 ,m o b y 2 2 ,2 3 ,2 4 ,m y g r i d 2 5 ,2 6 等把数 据源和对数据的分析工具均看成是服务,把他们一同集成在一个系统中。这些服 务提供者把数据包装成统一的格式,便于数据在服务之间的传递。所有服务首先 都需要在某一个中心进行注册,表明服务输入数据的类型和输出数据类型。当用 第一章引言 户得到一类数据后,系统都会根据数据的类型,自动的找到所有可以对数据进行 分析的服务,推荐给用户,便于用户对数据进行分析。 i s y s 使用户能方便的根据当前的数据动态的确定下一步可用的分析工具, 以满足用户科学探索式的应用需求。除此以外在m o b y 中,还存在一个层次结 构,描述了数掘之间的关系,例如继承关系,集合关系。这样,注册在服务器上 用来处理父概念的服务,也就可以处理子概念的数据。 m o b y 除了可以解决科学式探索的需求,也可以通过客户端实现简单的数据 采掘式活动,它通过查询服务器端来确定哪些服务可以处理当前的数据。但是, 对于数据的处理流程则是预先固定的,对于每种需求都需要手动建立一个客户端 服务。而”y g r i d 则依赖于手工构造的工作流规范应对高通量分析任务。 可以看出,现有方法缺乏一种灵活的集成框架以同时支持探索式与采掘式工 作方式。同时,现有方法对于数据的采掘式活动也都是手动构造的,每出现一种 需求都需要用户手动的生成。这种方法缺乏一种自动生成的过程,不方便用户的 使用。 1 3 本体及g o 无论是采用何种集成方式,异构数据源集成系统的首要任务就是要为集成系 统设计一个全局模式,用于表示来自不同异构数据源的各种数据,以便进行统一 处理。中问件位于异构数据库系统( 数据层) 和应用程序( 应用层) 之间,向f 协调各数据库系统,向上为访问集成数据的应用提供统一数据模式和数据访问的 通用接口。因此,全局模式的设计尤为重要。 数据集成需要在保证数据可靠性和完整性的前提下,实现跨地区( 全球性 的) 、长时间( 历史性的) 、多层次信息资源共享。然而,共享存在着诸多困难。 第一,由于历史原因。各个领域的术语、知识往往缺乏统一的标准 2 7 1 。相 同术语在不同数据库中的表示有所不同,即便是明显已达成一致的术语都常会有 语义上的误解【2 8 】。所以当多个系统集成,或者用到多个数据源时,语义不匹配 给数据共享带来了极大的困难。 第二,数据源数据异常复杂,不仅数据类型繁多,数据间的关系和约束多样, 而且上述内容还会随着时间不断变化。亟待有效技术来帮助管理这些信息。解决 问题的尝试之一是为相关领域建立统一的、标准化的概念体系,但这不是好方案, 甚至根本无法做到。因为标准的建立过程往往是一个多方无休止的争论过程,大 而全的体系也难以得到承认和使用。一种较好的解决方案是建立各自领域中的语 义共享机制,在此基础上,逐步完善多个协同领域的互操作能力。 事实上,被n e c h e s 等 2 9 1 在1 9 9 1 年首次引入计算机科学领域的本体,一 第一章引言 是这种努力的关键环节。用本体作为数据集成的中间模式,能很好地解决了知识 表示和知识共享等问题。为异构数据源语义集成提供基础。 现今,许多领域已经产生了一些用于知识共享的本体。如在生物信息学中最 著名的g e n eo n t o l o g y ( g o ) f 3 0 1 。其主要目的是数据库注释。最初g o 的涉及 范围不大,只想表述在一个物种中基因产物的作用,而并非涉及整个分子生物学。 g o 最初通过f l y b a s e 数据库描述果蝇基因的功能。随后扩展为包含m o u s ey e a s t 和基因表达的数据库,并还在不断的扩展中。这样,g o 的主要用途成了提供数 据库注释基因产物功能、过程和位置的受控词汇( c o n t r o l l e dv o c a b u l a r y ) 。g o 没 有高层本体。它主要有三个层次结构,分别表述基因产物功能、过程及位置和结 构。g o 包含很多概念,并为三个层次结构提供了大量的细节。它使用 i s 。a k i n d o f 和i s p a r t - o f 关系描述基因产物的作用。目前g o 本体中含有 1 7 7 4 6 个概念。 然而,随着某一领域研究的深入,该领域内的知识信息将会越来越多,相应 的本体也会变得异常复杂。因此,使用这样庞大的本体对用户来说是相当困难的。 例如在面向数据发现的数据源集成系统中,随着本体的增大和相关领域服务的增 加,对数据的相应分析可能出现很多方法。而用户可能只对相对很少的一些概念 之间的关系感兴趣,这样在这个本体上找到相应的查询路径就会变得越来越复 杂。如果可以根据用户的需要定制一个更小的、包含了用户所需信息的本体作为 全局参照知识体系,将可以大大减少用户不需要的信息,帮助系统更好的为用户 推荐查询路径。 目前,对子本体的提取也有比较多的研究。s p y n 等人在 3 1 中说明了子奉题 提取的必要性,同时b h a t t 等人在 3 2 ,3 3 】中描述了一种半自动的本体提取的方法。 但是方法依赖于一个领域内本体工程师的参与。 除了上述的半自动的方法外,还有很多子本体是完全通过手工生成的。例如 对于g o ,生物学家为了适应特定领域的需要,已经生成了很多g os l i m ( 例如 关于水稻的g os l i m 3 4 】) 。 1 4 本文的工作和贡献 本文的目标在于研究面向知识发现的生物信息资源集成技术,主要的工作如 下: 本文根据现有的面向知识发现的集成系统框架,给出一种同时支持探索 式与采掘式工作方式的灵活的集成框架- h a r m o n i o u s 。该框架不仅能够 提示用户当前数据可以进行哪些处理,还可以在用户给出输入和输出属 性后,自动的向用户推荐相应的查询路径。当用户选定某条路径后,帮 第一章引言 助用户自动的建立工作流描述,便于对数据的高通量处理。解决现有系 统工作流需要手动生成的问题。 给出了h a r m o n i o u s 系统中一些重要算法的实现,完整系统框架。算法包 括: 一 带有:常点继承约束图中的路径搜索算法。算法根据现有带有节点继 承约束的本体及用户给出的源属性和目标属性,快速有效的给出这 两个属性在本体图上存在的所有路径。便于用户对于新知识的发现。 该算法的算法复杂度为c 3 + t ,其中,c 为本体图上的概念数,t 为 算法求得的路径条数。 一 提出一个对路径排序算法,把查询出的所有路径尽可能按照用户的 期望推荐给用户。根据这个算法,系统可以有效地向用户推荐路径 搜索算法求出的所有路径。利于用户对路径的选择 根据用户的特定需求,给出一个有效的算法约减本体,以此作为 h a r m o n i o u s 的全局参照知识体系。解决了当本体和w e bs e r v i c e 数量增 多的情况下算法效率低下的问题,提高上述两个算法的效率。 1 5 本文的结构 第一章:引言本章针对目前随着生物信息学的发展而涌现的海量生物信息 数据,提出进行面向知识发现的数据集成的意义。给出全文工作重点。 第二章:面向知识发现的集成系统架构本章首先介绍了现有的面向知以发 现的集成系统i s y s 、m o b y 和g r i d 。说明了系统存在的问题,给出一种可以 同时支持探索式与采掘式工作方式的新的系统集成框架 第三章:集成系统中查询路径的自动推荐算法给出了查询路径的查找算法 和排序算法,并给出算法复杂度分析。 第四章:基于用户试图的本体约减给出了一个本体的自动约减算法 第五章:总结与展望本章总结了全文内容,并对今后的工作作了展望。 蚺一章面向知识发现的集成系统架构 第二章面向知识发现的集成系统架构 2 1i s y s i s y s 2 0 ,2 1 是i n t e g r a t e ds y s t e m 的简称,由美国n a t i o n a lc e n t e rf o rg e n o m e r e s o u r c e s 丌发并维护的自由软件。作为一个客户端集成工具,用户可自由地启 动不同的组件,而组件之间的数据流动和同步则由i s y s 负责。 系统使用类似于基于组件的集成方法,但是它更多的是关注如何集成这些组 件,而不是这些组件标准的定义。由于i s y s 模型中的简单概念可以有用户自己 定义,所以系统具有比较高的可扩展性,可以方便的对遗留软件系统进行包装, 集成在这个系统中。 2 1 1 系统总体结构 在i s y s 中,每个组件都只和i s y s 系统平台交互,而i s y s 系统平台则作为 这些服务之间事件和服务交互的中间件。通过事件的交互来同步这些不同的组 件。在系统平台级仅仅定义了抽象事件、服务和组件类。而几乎所有的具体功能 都是在各个组件中分别实现。初始运行时,首先系统会搜索一个特定的目录,注 册目录下所有的服务。注册的信息包括提供服务的类型和该服务所监听的所有事 件的类型。 i s y s 包括三个主要部分:事件通道( e v e n t c h a n n e l ) 、服务代理( s e r v i c e b r o k e r ) 和i s y s 客户机环境( i s y sc l i e n t e n v i m n m e n t ) 。其中事件通道负责各个组件削 事件的传递,服务代理则负责服务的交互【2 8 。i c e 贝f j 是系统的用户界面,可以 由来配置i s y s 系统及调用服务。 i s y s 主要同过以下方法进行信息的集成,如图3 1 所示。首先,用户通过i s y s 平台启动某一个服务,当该服务执行完后,将得到的数据信息发送给另一个服务, 以此来显示数据信息。如果某一服务需要其它服务的帮助,那么,该服务就向 i s y s 平台发送服务请求事件,i s y s 平台就会根据这个服务的类型自动匹配相应 的服务返回给用户,让用户选择执行。 第二章面向知识发现的集成系统架构 数据库 查询 分析工具 艄惴札务删。务抄姚姗 发 倦:。銎 发 送 送 m 审 仲 件 请 请 求 求 u h 服 并 务 图2 1i s y s 系统结构 2 1 2 服务的交互 在i s y s 中,服务的交换依赖于服务代理( s e r v i c e b r o k e r ) 组件。服务代理 在运行时自动的匹配请求者请求的服务类型和提供者提供的服务类型。i s y s 服 务代理只关心集成本地的服务,所有服务都运行在客户端。对于网络上共享的服 务,i s y s 用户需要首先编写一个本地的代理服务,由该服务去和网络资源或者 数据库进行交互,返回的结果在这个本地的代理服务中进行包装,以便于系统的 理解。如图2 1 所示,菱形表示服务代理,用来和其它服务进行交互;三角形表 示没有用户界面的服务,该服务需要组件进行请求;方块表示具有用户界面的服 务,该服务组件可以用来输入数据或显示数据。 i s y s 中提供对两种服务的请求,即对服务的直接请求和交互式请求。直接 请求时,组件告知i s y s 要调用的具体服务,i s y s 随即调用该服务并得到结果返 回。动态的交互式请求则要求用户给出输入数据的类型,i s y s 自动的从所注册 的服务中寻找可以将用户给出数据作为输入的所有服务并返回给用户,由用户选 择具体调用哪个服务。交互式请求的应用,让科学家对现有数据进行更深入的分 析奠定了基础。科学家可以方便的知道对当前的数据可以调用哪些服务。 第二章面向知识发现的集成系统架构 2 1 3 事件的交互 事件的交互依赖于事件通道组件( e v e n t c h a r m e l ) ,它使用一个中间件避免组 件间的直接依赖,保证各个组件间交互事件。 在i s y s 中,所有的事件被分为不同的类型。对于每一个事件的监听器,它们 只关心一种类型的事件。每一个组件可以向i s y s 注册多个箍听器,以此来监听 多个事件。每个事件都与一个数据对象相对应,该对象记录了事件所需要处理的 一些数据。比如:如组件接到一个i t e m s h o w n e v e n t 事件,那么表示,该事件所对 应的数据对象中存放了要现实的数据信息。 n 习 【。,一 务1 厂1 再丁 7 监听器| 注册事州1 :n e w阿 7 f 蓝e 扎册单什2 塑l 一一- l 号叵 j 心步朋务l 和威务2。 荨# 毛i f 。| l 丝型啦l 土一l 。i ;楚堡蔓丛! ; l 处理数据 - | _ - j :发i 苦事件2 获柙t 1 i 件2 处理事件2 图2 2 事件交互序列图 第一二章面向知识发现的集成系统架构 i s y s 事件交互的实现,如图2 2 所示,采用以下的步骤: 1 事件的接收者在运行时向事件通道注册它可以处理的事件类型。 2 当某个组件发出某一事件后,事件通道就根据这个事件的类型, 调用所有的可以处理该事件的已启动的服务 3 组件接收到事件后,对事件进行相应的处理,如果需要,则继续 发送事件给其它组件。 此外,为了在两个组件间进行事件的交互,必须明确的说明两个组件同步( 使 用s y n c h r o n i z e c l i e n t s ( c o m p o n e n t l ,c o m p o n e n t 2 ) 语句) 。这样,可以防止进行不需 要的同步,提高系统性能。当一个组件启动并传递数据给另一个组件时,两个组 件一般是同步的。 2 1 4 数据模型 为了让组件之间交换信息,必须为组件定义一个通用的描述数据的标准。使 服务的提供者和事件的监听者能够理解服务之间传递的数据信息。 通常的做法是对于某个领域内可能出现的概念,定义一个全局模式,列出所 有可能作为数据传递的概念。然后对于新生成的对象,继承描述这些概念的接口, 以此来让系统理解数据的类型。但是这个方法有一些问题。比如,研究发现,对 于不同的组件,它所关心的可能是某个数据对象的一部分信息。通过菜一个服务 得到的数据可能只是这个数据对象的一部分,而如果这时用户把这个输出作为另 一个数据服务的输入时,由于它们都描述了同一个对象,所以系统就会认为他们 描述了相同的概念,允许他们之间进行交互,这样将导致程序的出错。可以看出, 使用上面的方法,数据的消费者将无法得到可以信赖的正确数据。 因此,i s y s 上服务的输入或输出数据均继承i s y s o b j e c t 对象,对于每个对 象,都有一个属性的集合,这个集合说明了当前这个i s y s o b j e c t 对象包含哪些类 型的数据信息。i s y s o b j e c t 对象提供了对属性类型的查询和根据类型得到该类型 数据的方法。当服务返回一个i s y s o b j e c t 对象后,其他的服务就对该对象进行查 询,看是否包含了服务所需要的所有数据信息。如果包含了所有数摒,那么表示 这个数据对象可以作为该服务的输入。通过对这个数据对象的查询,就可以得到 服务所需的数据。 2 1 5 不同组件的集成方法 i s y s 中,所有的组件都继承两个借口:c l i e n t 和s e r v i c e p r o v i d e r 。实现了c l i e n t 接口的组件,用于广播和接收事件;实现了s e r v i e e p r o v i d e r 的组件,则用来注册 第二章面向知识发现的集成系统架构 和提供服务。任何一个组件都可以请求服务,允许同时继承实现两个接口。 对于网络上提供的服务,i s y s 平台将在本地生成一个服务代理,所有其他 组件如何需要使用该网络服务,由这个服务代理充当中间件。所有的事件请求和 接收都有该服务代理处理,并根据需要转换成网络上服务可以识别的方式,发送 请求,同时将结果包装成i s y s 平台所需要的结构。以此来降低组件之间的依赖 程度。因此,对w e b 的包装,i s y s 用户首先需要生成个客户代理,该代理使 用1 s y s 可以识别的方式描述了w e b 页面上数据的信息,在本地生成一个新的页 面供用户浏览。对于每个w e b 组件,i s y s 添加前缀”h t t p :l o c a l h o s t :8 0 8 0 “,以 解释和控制w e b 页面。例如对于h t t p :g e n e s m i t e d “g e n s c a n h t m l 将成为 h t t p :l o c a l h o s t :8 0 8 0 h t t p :g e n e s m i t e d “g e n s c a n h t m l 。通过这种方法集成w e b 站点后,对w e b 站点也可以动态 对于已存在的软件系统,如果是提供数据的( 比如数据库和分析工具) ,则 一般把它作为服务,同时创建对应的服务代理。同集成w e b 服务一样,服务代 理需要对查询请求事件进行处理,得到相应的查询语句或把输入数据转换成分析 工具可以识别的方式。然后对输出结果进行包装,便于i s y s 平台的理解和集成。 对于提供界面的工具,一般先建立相应的客户端工厂类( c l i e n tf a c t o r y ) 。客 户工厂类在i s y s 启动时,注册相应的服务信息。当获得服务请求时,调用相应 的工厂类生成相应的对象,来启动相应的工具。对于这个工具,首先也需要进行 相应的包装,用来响应i s y s 事件或动态调用其他的服务。 可以看出,使用上面的方法集成具有界面的软件时,对软件的包姨需要具有 软件的源代码或相应的程序接口。但是,有的时候需要集成的软件没源代码和使 用接口时,就需要截获更高一级的事件( 如w i n d o w s 事件) ,这种集成将变得非 常复杂。 2 2m o b y m o b y 2 2 ,2 3 ,2 4 1 是一个开源研究项目,其主要目标是生成一个通过w e b s e r v i c e 发布和发现生物学数据的体系结构。其中m o b yc e n t r a l 作为系统的核心, 注册所有的服务信息,并允许客户端检索已添加的服务和注册的服务。 m o b y 与其它的集成项目相比有自己的一些特点,比如知识驱动 ( k n o w l e d g e d r i v e n ) 的查询系统和服务类型层次结构( s e r v i c e t y p eh i e r a r c h y ) ,这些 特点力争更好的反映生物学家探索和管理他们数据的方法,使系统更容易加入新 的数据类型和服务。 第二章面向耋u 识发现的集成系统架构 2 2 1 系统总体结构 系统使用简单、通用的格式来描述客户端服务的接口信息,以便于客户端之 间相互了解。同时,系统要求每个客户端把返回的数据信息使用通用的格式进彳r 包装,便于数据在客户端之间自动的相互传递,避免用户手动修改数据的格式。 客户端作为服务的提供者,提供分析服务或数据的服务。但它在提供服务前,首 先需要把自己提供的服务信息注册在m o b y c e n t r a l 中。 m o b y 中主要有以下一些组件: m o b y 对象( m o b y o b j e c 0 :用来在客户端和服务器端传递数据,该 对象的模版储存在m o b yc e n t r a l 中。 m o b yc e n t r a l :登记所有已注册服务的输入输出对象类型,提供的 服务类型和调用服务的u r l 。 对象和服务的层次结构( o b j e oa n ds e r v i c eh i e r a r c h i e s ) :描述了两个对 象之间或两个服务之间的关系。 m o b y 的系统结构如图2 3 所示,当客户端需要对数据进行分析时,根据用 户需要,查询m o b y 服务器端。服务器端搜索已注册的满足用户需求的服务返 回给用户。当用户接收到服务列表,从中选择自己需要的服务后,发送请求到服 务器端得到该服务的详细信息。然后客户端根据这个详细信息调用服务提供者提 供的服务。其中,服务的提供者返回的数据需要按照m o b y 服务器中元数据的 描述来包装数据,以便于作为其它服务的输入。m o b y 服务器中的元数据信息 包括m o b y 对象之间的层次结构和服务类型之间的层次结构 图2 3m o b y 系统结构 第二二幸面向知识发现的集成系统架构 2 2 2 m o b y 对象和m o b y 服务 m o b y 对象作为服务之间传递的数据,同i s y s 一样,其设计将尽量避免数 据结构定义的标准化带来的麻烦。而m o b y 服务则用来给客户端提供服务,对 这些m o b y 对象进行处理。 m o b y 对蒙分为两类,一部分是m o b y 系统内部的对象,另一部分是外部 数据模型。对于内部对象,m o b y 系统内部自建了一个层次结构,该结构使用 x m ls c h e m a 描述了这些概念间的i s a 和p a r t o f 关系。使用这个结构主要因为 以下优点: 一个对象可以继承另一个对象,来简化对象的描述 一个复杂对象可以有多个对象构成 对子对象进行提取后,可以使用把父对象作为输入的服务 m o b y 对象包含了两个部分,首先是这个对象的唯一标志符m o b yt r i p l e , 这个标志符包含了三部分的内容:对象类型、领域通用的标志符命名空阔( 如 g e n b a n k a c ) 和用来描述对象的命名空间的值。例如一个m o b yt r i p l e 用下面 的来x m l 数据来表示: 除了包含m o b yt r i p l e 外,对象还包
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 核酸标记荧光成像技术-洞察及研究
- 2025-2030工业固废处理技术创新趋势与投资回报预测研究报告
- 2025-2030工业元宇宙概念落地实践与制造业价值创造分析
- 2025-2030工业元宇宙数字孪生体精度分级与仿真引擎选型
- 2025-2030工业传感器智能化升级路径与市场需求变化
- 2025-2030工业传感器技术演进与市场应用前景研究报告
- 2025-2030工业互联网平台赋能传统制造业数字化转型白皮书
- 2025-2030工业互联网平台标准化建设与市场渗透率分析报告
- 2025-2030工业互联网平台商业模式创新与生态构建分析报告
- 2025-2030工业互联网平台发展现状及制造业数字化转型战略研究报告
- 幽门螺杆菌治疗进展
- 集装箱质量检测标准
- 人教版九年级初中化学实验报告单电子版
- 导尿术操作并发症及处理规范
- 水利水电工程单元工程施工质量验收评定表及填表说明
- 人工智能训练师理论知识考核要素细目表四级
- 全国职业院校技能大赛高职组(服装创意设计与工艺赛项)备赛试题库(含答案)
- DL∕T 831-2015 大容量煤粉燃烧锅炉炉膛选型导则
- 金相检验中级试题
- 工业园区环保管家技术方案
- (正式版)QBT 8006-2024 年糕 标准
评论
0/150
提交评论