(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf_第1页
(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf_第2页
(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf_第3页
(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf_第4页
(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(运筹学与控制论专业论文)基于分布式数据库技术的pdm系统的研究.pdf.pdf 免费下载

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

文档简介

大连理工大学硕士学位论文摘要 摘要 当今i t 行业技术发展目新月异,数据库技术也不例外。随着新应用的 出现、网络技术的发展以及w w w 的迅速普及,数据库在理论和实践方面 都面临着许多新问题和新挑战,这其中的一个问题就是数据库运行环境的变 化所带来的。系列问题。现在数据库的运行环境已不是单个数据库的集中系 统而是联网的的分布式环境,因而,如何在分布环境下实现分布式数据库的 集成问题,既达到对数据的集中管理和共享,又能使地域的分散性被系统隐 蔽起来,所有这些具有理论和现实的要求。 分布式数据库系统的研究涉及分布式处理技术、网络技术和数据库技术 的研究,而这些研究必须贯穿在对一些现实问题的解决之中。本文将通过对 分布式数据库技术、分布式处理技术、网络技术深入研究的基础上,重点解 决分布式p d m 系统的集成问题,进而探索出一套切实可行的分布式数据库 系统的的解决方案,解决现实企业中面临的产品数据管理问题。主要研究内 容有: 1 ,研究了分布式数据库系统中数据的复制问题,给出了数据复制的一 般模型 2 论述了分布式系统的进程管理,提出了进程中线程的几种组织方式。 3 根据多处理器的分配原则,给出了几种处理器分配算法,论述了其 优缺点。 4 深入研究分布式系统中p d m 的集成设计方式,并提出了一套集成设 计方案。 5 给出了企业实施p d m 系统的方案,并提供了一个实施实例。 关键字:分布式处理,体系结构、原子事务,数据复制,系统集成,线程, 多处理器,系统集成 大连理工人学硕士学位论文a b s t r a c t a b s t r a c t n o w a d a y s ,i ti n d u s t r yt e c h n o l o g yi sc o n s t a n t l yc h a n g i n g ,w i t hn oe x c e p t i o n f o rd a t a b a s e w i t ht h eo c c n r e n eo fn e w a p p l i c a t i o n ,t h ed e v e l o p m e n to fn e t w o r k t e c h n o l o g ya n dp r o m p t i n gp o p u l a r i t y , d a t a b a s ei sf a c e dw i t hm a n yn e w p r o b l e m s a n dc h a l l e n g e ,o n eo fw h i c hi sb a tt h ea l t e r a t i o no f o p e r a t i n ge n v i r o n m e n tb r i n ga s e r i e so fp r o p l e m s a t p r e s e n t d a t a b a s eo p r e r a t i o n g e n v i r o n m e n t sa r en o t i n t e g r a t e ds y s t e m o f s i n g l e d a t a b a b eb u td i s t r i b u t e de n v i r o n m e n tb a s e do n n e t w o r k t h e r e f o r e ,i t h a sa c a d e m i ca n d r e a l i s f i c r e q u i r e m e n t t h a th o wt o i m p l e m e n ti n t e g r a t e dq u e s t i o n s o fd i s t r u b i t e d s y s t e m ,a r r i v e a tc e n t r a l i z e d m a n a g e m e n ta n ds h a r ew i t hd a t a , m e a n w h i l em a k et h ea r e ad i s p e r s eh i n d e r e db y s y s t e m 。 t h e s t u d y o fd i s t r i b u t e di n v o l v e st h e s t u d y o fd i s t r i b u t e d p r o c e s s i n g t e c h n o l o g y , n e tw o r kt e c h n o l o g ya n dd a t a b a s es t u d y w h i c hm u s tb er e l a t e dt o s o l u t i o no ns o m er e a le x i s t e n tp r o b l e m s t h i sp a p e rm a i n l yr e s o l v e sd i s t r i b u t e d p r o p l e mo fd i s t r i b u t dp d ms y s t e m ,e x p l o r e s as e to fs c h e m e so ff e a s i b l e d i r t r i b u t e dd a t a b a s es y s t e m ,a n ds o l v ep r o b l e mo f p r o d u c t i o nd a t am a n a g e m e n ti n e n t e r p r i s e m a i nc o n t e u t sa sf o l l o w : i s t u d y i n gd u p l i c a t i n gp r o p l e mo fd i s t r i b u t e dd a t a b a s es i m e m ,a n dg i v i n ga g e n e r a lm o d e l 2 d i s c u s s i n ga b o u tt h ep r o c e d u r em a n a g e m e n to fd i s t r i b u t e ds y s t e m ,b r i n g i n g f o r w a r das e to f i n t e g r a t e dd e s i g n i n gt h e m e 3 i n l i g h to f t h er u l eo fm u l t i c p ud i s p e n s a t i o n ,g i v i n gs e v e r na l g o r i t h mo f c p u d i s p e n s a t i o n 4 d e e p l ys t u d y i n gi n t e g r a t e d d e s i g n i n gm o t h e f l s o fd i s t r i b u t e dp d m s y s t e m ,a n dg i v i n ga s e to f i n t e g r a t e d t h e m e s 5 g i v i n g at h e m ew h i c he n t e r p r i s e s i m p l e m e n tp d ms y s t e m , a n dg i v i n ga e x a m p l e k e y w o r d s :d i s t r i b u t e dt r a n s a c t i o n ,a r c h i t e c t u r e ,a t o m i c t r a n s a c t i o n ,s y s t e m i n t e g r a t i o n ,l i n ep r o c e s s ,m u l t i c p u i i 大连理工大学硕士学位论文第一章综述 第一章综述 1 1 问题的提出 目前,在信息技术领域面临着这样的情况:一方面,一些应用领域要 求管理越来越复杂的信息,这些领域( 如c a d c a m 、c i m s 、c a s e 、g i s 等) 数据类型众多,具有诸如多媒体、空间数据、科学数据、地理数据等 多种复杂数据类型,这些数据类型较传统数据复杂,因此,这就提出了用 数据库技术和系统来管理这些复杂数据的要求,以图获得数据库系统所具 备的许多数据管理功能,如恢复、并发控制、完整性、存储管理等;另一 方面,由于网络技术的蓬勃发展,信息处理早己从单用户环境发展到网络 环境,这种环境为资源、信息的共享提供了极大的方便,并且由于多机协 同工作可以大大提高工作的效率。这两者的结合要求数据库管理系统能够 在异构环境中管理复杂数据对象,而分布式数据库系统( d i s t r i b u t e dd a t a b a s es y s t e m ,缩写d d b s ) 正是二者技术有机结合的结果。 从理论上讲,分布式数据库系统通过复制使系统具有适当的数据冗余, 从而增加了系统的可靠性和可用性;另一方面,分布式数据库系统通过提 供局部自治的数据共享和场地之间的协调,从而使系统具有快速的数据处 理能力;同时,通过数据库技术与并行处理技术的结合,利用多处理机并 行处理产生的规模效益,可提高系统的快速反应能力。 在现实应用上看,分布式数据库适合于单位分散的部门。在企业内部, 由于计算机网络技术的发展以及地理上分散的部门、公司、厂商对于数据 库应用的需求,数据库技术从单机扩展至网络,数据的收集、存储、处理 和传播由集中式走向分布式、由封闭走向开放已在所难免。企业中,产品 数据管理( p r o d u c td a t am a n a g e m e n t - - p d m ) 以产品为中心,通过分布处 理技术,可以把企业生产过程中所有与产品相关的信息和过程集成起来, 大连理工大学硕士学位论文第一章综述 统一管理,使产品数据在其生命周期内保持一致、最新和安全,为工程技 术人员提供一个协同工作的环境,从而缩短产品研发周期、降低成本、提 高质量,为企业赢得竞争优势。据国外资料统计,p d m 的应用能使产品设 计周期缩短2 5 ,减少工程设计修改4 ,加快产品投放市场进度5 0 8 0 ,总成本削减2 5 以上。 1 2 分布式数据库的发展历程 分布式数据库系统是在集中式数据库系统的基础上发展起来的,是数 据库技术与计算机网络技术相结合的产物。分布式数据库系统是指在逻辑 上属于同一系统,但在物理上分散在由计算机网络连接的多个场地( 节点) 的一组数据集。每个场地上的数据一般用来描述本场地的现实世界,场地 局部数据库的数据源和大多数应用一般均驻留在本场地,即每个场地具有 独立处理的能力( 又称场地自治) ,可执行局部应用;另外,场地间通过网 络通讯也能执行全局应用。对用户来说,一个分布式数据库从逻辑上看, 如同集中式数据库一样,用户可在任何一个场地执行全局应用。 对分布式数据库的研究始于7 0 年代。早在7 0 年代中期,美国计算机 公司研制出了第一个分布式数据库原型系统s d d 一1 。该系统通过i n t e m e t 的前身a r p a n e t 网络连接,以现有的d a t a c o m p u t e r 数据库管理系统为基 础,在该系统中几乎概括了分布式数据库的全部理论和实现技术。它的研 制成功为后来的研究和开发取得了许多有益的经验,在这之后又有许多分 布式数据库原型系统被开发成功,所有这些为都极大的推动了分布式数据 库系统的理论和技术的发展。8 0 年代是分布式数据库系统成长、完善并逐 步走向实用化的时代。我国对分布式数据库系统的研究正是从这时开始的, 虽然起步较晚,但起点高,相继开发出了一些有代表性的原型系统,并于 19 8 6 年起举办了多届分布式数据库系统专题研讨会,深入讨论和交流了分 大连理工大学硕士学位论文第一章综述 布式数据库系统在研制、开发过程中的理论与技术问题,所有这些都极大 的推动了我国分布式数据库系统的发展。 经过2 0 多年的发展,分布式数据库技术在理论已经成熟,技术上也得 到很大发展。并已有些产品进入市场。如o r a c l e 公司推出的关系数据 库系统o r a c l e 自第五版本已提供了分布式数据处理功能,可在许多硬 件平台上运行( 大、中、小计算机和微机) ,支持多种操作系统和网络协议。 实现了分布式系统所要求的分布透明、网络透明及操作透明。但随着新的 数据库应用类型的出现,在分布式数据库系统中也出现新的研究领域,如 分布式知识库系统、分布式面向对象系统等。 同时,随着网络技术和c l i e n t s e r v e r 技术特别是i n t e m e t 的发展和 w w w 的迅速普及,分布式数据库技术正在向分布式处理系统中渗透,例 如将c o r b a ( c o m m o no b j e c tr e q u e s tb r o k e ra r c h i t e c t u r e ) 技术与j a v e 结合用来实现异构环境下分布式处理、以及基于c o r b a w e b 的三层体系 结构等分布式处理技术使得分布式数据库理论得到扩展,并给这一领域注 入了新的活力,提供了更加先进的技术途径和更广阔的应用前景。 1 3 本文的学术思想、特色和预期达到的成果或水平 当今i t 行业技术发展日新月异,数据库技术也不例外。随着新应用的 出现、网络技术的发展以及w w w 的迅速普及,数据库在理论和实践方面 都面临着许多新问题和新挑战,这其中的一个问题就是数据库运行环境的 变化所带来的一系列问题。现在数据库的运行环境已不是单个数据库的集 中系统而是联网的的分布式环境,因而,如何在分布环境下实现分布式数 据库的集成问题,既达到对数据的集中管理和共享,又能使地域的分散性 被系统隐蔽起来,所有这些具有理论和现实的要求。 本选题主要集中在如何通过分布式数据库技术解决企业产品数据管 大连理工大学硕士学位论文第一章综述 理系统的问题,产品数据管理( p r o d u c td a t am a n a g e m e n t - - p d m ) 以产品 为中心,通过计算机网络和数据库技术,把企业生产过程中所有与产品相 关的信息和过程集成起来,统一管理,使产品数据在其生命周期内保持一 致、最新和安全,为工程技术人员提供一个协同工作的环境,从而缩短产 品研发周期、降低成本、提高质量,为企业赢得竞争优势。企业的实际需 求促进了p d m 产品的发展。前期的p d m 产品侧重于部门级的设计环节的 数据管理与共享,随着用户需求的提高和技术的发展,贯穿企业全过程的 企业级p d m 系统将成为热点,要求这种系统能遵循一定的规范,充分集成 现有的应用系统,对跨地域企业的产品数据同样能实现信息集成。 通过本选题的研究,将使自己对分布式处理技术、网络技术和数据库 技术从理论上有一个全面、深入的探索,并最终形成一套切实可行的分布 式数据库系统的的解决方案,解决现实企业中面临的产品数据管理问题。 1 4 本文的主要工作 本选题研究对象为当前的研究热点之一一分布式数据库系统,以及如 何将分布处理技术引入到产品数据管理中。 分布式数据库系统的研究涉及分布式处理技术、网络技术和数据库技 术的研究,而这些研究必须贯穿在对一些现实问题的解决之中。本 文将通过对分布式数据库技术、分布式处理技术、网络技术深入研究 的基础上,重点解决分布式p d m 系统的集成问题,进而探索出一套切实 可行的分布式数据库系统的的解决方案,解决现实企业中面临的产品数据 管理问题。 1 5 技术路线和技术措施 产品数据管理( 简称为p d m ) 作为c i m s 应用系统的集成框架,要能 够集成不同环境下的应用系统,由于在实际应用中,p d m 系统往往在不同 4 大连理工大学硕士学位论文第一章综述 数据库的异构环境下运行,随着用户需求的提高和技术的发展,贯穿企业 全过程的企业级p d m 系统将成为p d m 重点,这就要求这种系统能遵循一 定的规范,充分集成现有的应用系统,对跨地域企业的产品数据同样实现 信息集成。 为了能实现以上的目标,可以采用基于客户机n 务器的计算环境分布 式数据库系统,各场地的客户机通过远程过程调用( r e c ) p 8 q l 形式请求 服务程序提供服务,服务器执行所需的处理,然后将结果返回给客户机, 客户机和服务器之间通过局域网实现无缝协同计算;在整个系统中,各局 域网之间采用t c p i p 协议通讯,通过数据复制技术、两阶段递交协议等来 确保分布在网络各个场地上的同构或异构数据的一致性、完整性和可用性。 为了使这些更好的实现,可以采用c o r b a ( c o i t i i l l o no b j e c tr e q u i r eb r o k e r a r c h i t e c t u r e ) 规范,为系统运行提供了一个功能强大的平台,进而建立基 于c o r b a w e b 的产品数据管理系统。 大连理工大学硕士学位论文第二章基本原理 第二章基本理论 分布式数据库是集中式数据库在新的应用领域下的扩展和深入,它 既保持了集中式数据库系统的特点,又比集中式数据库系统复杂,所涉 及的领域更广,所解决的问题更多。 下面就本选题研究中所涉及到些基本概念及理论知识进行简要 的介绍和一定的探讨,主要包括分布式数据库系统的基本概念、分布式 数据库的体系结构、数据复制、分布式数据库的一致性等内容。 2 1 布式数据库系统的基本概念 分布式数据库系统( d i s t r i b u t e dd a t ab a s es y s t e m ,缩写d d b s ) 是 数据库技术与计算机网络技术相结合的产物。一个分布式数据库是由分 布于计算机网络上的多个逻辑相关的数据库组成的集合,网络中的每个 结点具有独立处理的能力( 称为场地自治) ,可执行局部应用,同时,每 个结点通过网络通讯系统也能执行全局应用。 定义2 1 - 1 局部应用和全局应用 局部应用是指对本结点的数据库执行某些应用,其用户称为局部用 户。全局应用( 或分布应用) 是指对二个以上结点中的数据库执行某些 应用,其用户称为全局用户。支持全局应用的系统才能称为分布式数据 库系统。对用户来说,一个分布式数据库系统逻辑上看如同集中式数据 库系统一样,用户可在任何一个场地执行全局应用。 定义2 1 - 2 分布性 指数据不是存放在单一场地为单个计算机配置的存储设备上,而是 按全局需要将数据划分成一定结构的数据子集,分散地存储在各个场地 ( 结点) 上。在分布式数据库系统中,由于分布性的存在使的分布数据 独立性的要求更加丰富。 大连理工大学硕士学位论文第二章基本原理 定义2 1 3 逻辑协调性 指各场地上的数据子集,相互间由严密的约束规则加以限定,而在 逻辑上是一个整体。 定义2 1 4 透明性 “透明”是一个很重要的术语,它表示:某一个实际存在的事物看 起来却好象不存在一样。对用户而言,某个事物的透明性减小了该事物 操作的复杂度。 定义2 1 - 5 网络协议 网络中的各个结点在进行数据交换时必须遵守某些事先约定好的 规则,而这些为网络中的数据交换而建立的规则、标准既称为网络协议。 2 2 分布式数据库的模式结构 在集中式数据库系统中为了实现较高的数据逻辑独立性和物理独 立性,一般采用三级模式体系结构。而在分布式数据库系统中为了实现 场地透明( 分布透明) ,具有更多级模式。 分布式数据库系统的模式结构分为两部分:集中式数据库的模式结 构既代嘉髯场士拍p 屠部斯搌庄系统的模式基本结构:分布式豹棍廑 至二 f全曼塑鱼堡蔓 j 大连理工大学硕士学位论文第二章基本原理 图2 1 分布式数据库模式结构图 ( 1 ) 全局外模式 它为全局概念模式的子集,表示全局应用所涉及的数据部分,由多 个用户视图组成。 ( 2 ) 全局概念模式 它定义分布式数据库的全局逻辑结构,是分布数据库的全局概念视 图。该模式包括全局概念模式名、属性名、每种属性的数据类型定义和 长度。 ( 3 ) 分片模式 由于分布式数据库的数据可按集中、重复、分割混合方式分布,分 片模式用于说明如何放置数据库的特殊部分。分布式数据库可划分逻辑 片,逻辑片可以是数据项分割,也可以是数据值分割,或是上述两种。 逻辑片可以任意定义,但它们之间是相关的。它们组成不相交或不重迭 的数据库子集。分片模式定义片段、片段与概念模式之间的映象。 ( 4 ) 分布模式 它定义片段存放结点。一个片段在物理上可分布到不同结点。 2 3 全功能分布式数据库系统的规则和目标 1 9 8 6 年c j d a t e 提出了全功能分布式数据库系统的1 2 条准则 和目标: 1 、局部结点自治性,网络中的每个结点是独立的数据库系统,它 有自己的数据库,运行它的局部d b m s ,执行局部应用,具有高度的 自治性。 2 、不依赖中心结点,即每个结点具有全局字典管理、查询处理、 并发控制和恢复控制等功能。 大连理工大学硕士学位论文第二章基本原理 3 、能连续操作,该目标使中断分布式数据库服务情况减至最少,当 一个新场地合并到现有的分布式系统、或从分布式系统中撤离一场地不会 导致任何不必要的服务中断;在分布式系统中可动态的建立和消除片段, 而不中止任何组成部分的场地或数据库;应尽可能在不使整个系统停机的 情况下对组成分布式系统的场地的d b m s 进行升级。 4 、具有位置独立性( 或称位置透明性) ,用户不必要知道数据的物 理存储地,可工作得象数据全部存储在局部场地一样。一般位置独立性需 要有分布式数据命名模式和字典子系统的支持。 5 、分片独立性( 或称分片透明性) ,分布式系统如果可将给定的关 系分成若干块或片,可提高系统的处理能力。利用分片将数据存储在最频 繁使用它的位置上,使大部分操作是局部操作,减少网络的信息流量。如 果系统支持分片独立性,用户工作进来就像数据全然不是分片的一样。 6 、数据复制独立性,是将给定的关系( 或片段) 可在物理级用许多 不同存储副本或复制品在许多不同场地上存储。支持数据复制的系统应当 支持复制独立性,用户工作可像它全然没有存储副本一样地工作。 7 、支持分布式查询处理,在分布式数据中有三类查询:局部查询、 远程查询和全局查询,局部查询和远程查询仅涉及单个结点的数据( 本地 的或远程的) ,查询优化采用的技术是集中式数据库的查询优化技术。全 局查询涉及多个结点上的数据,其查询处理和优化要复杂的多。 8 、支持分布事务管理,事务管理有两个主要方面:恢复控制和著发 控制。在分布式系统中,单个事务会涉及到多个场地上的代码执行,会涉 及到多个场地上的更新,可以说每个事务是由多个”代理”组成,每个 代理代表在给定场地上的给定事务上执行的过程。在分布式系统中必须保 证事务的代理集,或者全部一致交付,或者全部一致回滚。 大连理t 大学硕士学位论文第二章基本原理 9 、具有硬件独立性,希望在不同硬件系统上运行同样的d b m s 。 1 0 、具有操作系统独立性,希望在不同的操作系统上运行d b m s 1 1 、具有网络独立性,如果系统能够支持多个不同的场地,每个场 地在不同的硬件和不同的操作系统,则要求该系统能支持各种不同的通 信网络。 1 2 、具有d b m s 独立性,实现对异构型分布式系统的支持。理想 的分布式系统应该提供d b m s 独立性。 上述的全功能分布式数据库系统的准则和目标起源于:一个分布式 数据库系统,对用户来说,应当看上去完全像一个非分布式系统。 2 4 分布式数据库系统中数据的复制问题的研究 数据复制技术应用于分布式数据库系统,其目的是为了提高系统的 可用性( a v a i l a b i l i t y ) 、可靠性( r e l i a b i l i t y ) 及性能( p e r f o r m a n c e ) 。随 之带来的数据一致性维护的问题,即同一数据项在不同的结点上的拷贝 可能会由于数据的更新而彼此之间产生不一致。 对于数据复制,一般要求其满足单拷贝串行性,即同一数据的多个 拷贝必须表现出一份拷贝的行为;并发事务的执行结果必须等于这些事 务的某个串行序列的执行结果。 下面我们来考察数据复制的一般模型。 首先,从复本更新的传播策略来看,可以分为以下两种:紧密复制 ( e a g e rr e p l i c a t i o n ) ,将所有结点上的复本更新作为一个原子事务的一 部分,所有结点上的复本严格同步:松散复制( l a z yr e p l i c a t i o n ) ,更新 事务提交之后,异步地将更新传向其它结点。 其次,从复本更新的控制方式来看,也可以分为以下两种:群方式 ( g t o u d ) ,任何拥有某数据项拷贝的结点都可以更新该拷贝,称之为随 大连理工大学硕士学位论文第二章基本原理 处更新( u p d a t ea n y w h e r e ) ;主方式( m a s t e r ) ,每一对象都拥有一个主 结点,只有主结点能够更新对象的主拷贝,其它复本是只读的,其它欲 更新该对象的结点请求主结点完成更新,由主结点将更新传向其它结点。 这样,可以有以下几类数据复制模型:松散群方式、松散主方式、 紧密群方式、紧密主方式。一个数据复制模式的好坏,可以从两方面来 判别:一是看它是否有扩展缺陷( s c a l e u pp i t f a l l ) ,即随着系统规模的扩 大,其效率有无显著的降低;二是看它是否会产生系统错觉( s y s t e m d e l u s i o n ) ,即当调解失败时,系统是否处于不一致状态。 一个理想的复制模式应该达到以下要求: 可用性及可扩展性( a v m l a b i l i t y a n ds c a l a b i l i t y ) :提供高可用性和 可扩展性,同时避免不稳定性; 移动性( m o b i l i t y ) :允许移动结点在离线时也能够读写数据库; 可串行性( s e r i l i s a b i l i t y ) :满足单拷贝串行化事务执行要求; 一致性( c o n v e r g e n c e ) :提供一致性以避免系统错觉。 一个要达到商用层次的数据同步服务器应该具备以下功能: 支持多操作系统,包括p a l m o s 、w i n d o w s 、w i n d o w s c e 等; 支持异构数据库; 用于捕获数据更新的操作如触发器、日志等; 数据的压缩及加密; 与服务器端同步的离线批量处理模式: 基于共享逻辑的全双向同步复制等。 现在已有许多公司的产品达到了上述要求,如s y b a s e 的m o b i l i n k , 0 r a c l e 的i c o n n e c t ,i b m 的d b 2c o n n e c t ,s y n c h r o l o g i c 的i m o b i l e s u i t e 等。 大连理工大学硕士学位论文第二章基本原理 2 5 分布式数据库的查询处理 在分布式数据中有三类查询:局部查询、远程查询和全局查询,局 部查询和远程查询仅涉及单个结点的数据( 本地的或远程的) ,查询优化 采用的技术是集中式数据库的查询优化技术。而全局查询涉及多个结点 上的数据,其查询处理和优化要复杂的多。 按全局关系模式的概念,对分布式数据库的全局查询有三种查询: 用户查询( q u ) ,是分布数据库( d i s t r i b u t e dd a t ab a s e ,d d b ) 中在全 局数据库( g d b ) 上的查询;逻辑查询( q 1 ) ,是d d b 中在逻辑数据库 ( l g d b ) 上的查询;物理查询( q p ) ,是d d b 中在物理数据库( p d b ) 上的查询。图2 2 是其查询的形象表示。 g d b 卜l g d 娶p d b 图2 2 分布式d b 中全局查询转换 d d b 中查询的定义如下: 定义4 1 分布式数据库系统的查询处理q p 是一种算法:算法的输 入是用户查询q u ,算法的输出是相应的物理查询q p ,算法的功能是将 用户查询按照每个全局关系的分布结构转换成一个最优的物理查询。 2 6 事务处理 2 6 1 原子事务 原子事务又简称为事务,我们可以把一个或一段应用操作序列的执 行定义为事务,它是保证操作结果正确的最小运行单位。 = 连理工大学硕士学位论文第二章基本原理 下面是一个修改在线数据库的现代银行应用 程序。客户利用一台带有调制解调器的p c 机呼叫银行系统,打算 从一个帐户中提取钱存入另一个帐户中。操作分两步完成: ( 1 ) 提款( 数量,帐户1 ) 。 ( 2 ) 存款( 数量,帐户2 ) 。 如果在第一个操作完成后,第二个操作开始前电话连接被中断,这 笔钱己被记入第一个帐户的借方,但还没有记入第二个帐户贷方中。这 笔钱就消失了。 如果能将这两个操作组合在一个原子事务中就可以解决这个问题。 两个操作要么全部完成,要么一个也不执行。关键是在事务失败时,能 回复到执行前的初始状态。这就需要能够重建数据库的方法。这是原子 事务必须提供的功能。 2 6 2 事务原语 利用事务编程需要特殊的原语,这些原语必须由操作系统或语言的 运行系统提供。原语的例子如下: ( 1 ) b e g i nt r a n s a c t i o n 开始一个事务的命令。 ( 2 ) e n dt r a n s a c t i o n 结束一个事务的命令。 ( 3 ) a b o r tt r a n s a c t i o n 中断事务;恢复原先原语。 ( 4 ) r e a dt r a n s a c t i o n 从文件( 或数据库) 读取数据。 ( 5 ) w r i t e t r a n s a c t i o n 向文件( 或数据库) 写数据。 准确的原语表由事务中用到的对象类型决定。在邮件系统中,应该 有发送、接收和转交邮件的原语。帐务系统中的原语与此完全不同。一 般的,事务中也可以使用通常的语句,过程调用等内容。 下面以航班订票系统中预定一张从纽约的w h i t ep l a i n s 机场到肯 尼亚的m m i n d i 机场的机票的进程为例加以说明。一条航线是从w h i t e 大连理工大学硕士学位论文 第二章基本原理 p l a i n s 到j f k ,再从j f k 到n a i r o b i ,最后由n a i r o b i 到m a l i n d i 。图 26 a 中,将三段航线的预定票分为三个动作。现在假定,前两个订票动 作结束之后,第三段航线己经客满。这时事务中止,取消前两个订票操 作的执行结果,即航班数据库恢复为事务开始前的值见( 图2 8 b ) 。 b e g i nt r a n s a c t i o nb e g i nt r a n s a c t i o n 保留w p j f k :保留w e j f k : 保留j f kn a i r o b i :保留7 f k n a i r o b i : 保留n a i r o b i - m a l i n d i :m a i r o b i m a l i n d i 客满= a b o r t _ t r a n s a c t i o n ; e n dt r a n s a c t i o n ( a )( b ) 图2 - 6 ( a ) 预订三张机票的事务( b ) 第三段航线客满时,事务中止 2 6 3 事务属性 事务应具有以下三个必要属性: ( 1 ) 序列化:指并发的事务互不干扰。该属性保证两个或多个事务 同时运行时,对它们中的每一个或其他进程而言,最后的结果与这些事 务按照某种次序顺序运行的结果一致。 ( 2 ) 原子性:指对外界来说,事务的执行是不可分割。该属性保证 每个事务要么全部执行,要么都不发生,而且如果事物发生,它的发生 就是一个不可分割的瞬时动作。事务进展过程中,其他进程都看不到事 务发生的中间状态。 ( 3 ) 永久性:指一旦事务被执行,它所做的修改就永久生效。 2 6 4 两段提交协议( 2 p c ) 前面已经提到,事务的提交动作必须作为一个原子动作完成。分布 式系统中,事务的提交可能需要不同机器上的多个进程之间的协调,这 大连理工大学硕士学位论文第二章基本原理 些进程中都包含事务中修改的某些变量,文件,数据库和其他对象 两段提交协议( 2 p c ) 是为了保证分布式事务的原子性而采用的用 来实现分布式事务提交的一种方法。其基本内容是,把全局事务的提交 分为两个阶段,第一阶段为预提交阶段,由协调者进程向各场地发出了 子事务,当各参与场地子事务完成后,向协调进程发出预提交命令,同 时在曰志文件中记入该子事务提交所需的全部信息及子事务预提交的事 实。协调进程从各子事务收到预提交命令,如果所有的子事务均回答了 预提交,则全局事务可以提交:如果至少有一个子事务回答了a b o r t , 或超时未回答,则全局事务作出夭折的决定。第二阶段为执行阶段,协 调者在目志中记入其决定后,由协调者向个子事务发出其决定( 提交或 夭折) ,所有的参与者根据协调者的命令,先记入日记文件,然后执行提 交或终止命令。 分布式事务的2 p c 协议存在着几个不同的实现算法,按个参与者之 间的通讯结构可分为线性的,集中式的,分层的和全分布式的四种。对 它们的评价依据报文传递的个数和网络延迟而定。 2 6 4 分布式事务模型 在分布式数据库系统中,任何一个应用的请求最终将转化成对数据 库的存取操作序列,所以从外部特性看,分布式事务和集中式事务一样, 它也是一个或一段应用的操作序列,是用户对数据库存取操作序列的执 行的最小单位。从外表上看,它和集中式事务具有相同的事务模型。它 也使数据库从一个一致的状态改变到另一个一致的状态。然而在执行时, 分布式事务对分布式数据库的存取经转换、分解、优化后,产生一个涉 及到用通讯原语联系的多个局部数据的存取操作序列,称为分布执行计 划( d e p ) 。这个分布执行计划可以分解为涉及相应场地上的局部数据库 的操作序列,既各场地上的子d e p 组成。因此。通常称分布式事务为全 大连理工大学硕士学位论文第二章基本原理 局事务,而涉及各相应场地的子d e p 称之u 务。 如果事务用t : o l o m ) 表示,则全局事务u l 用( 型生丛竖 d e p 0 1 o m ) 表示。d e p 可以分解为: d e p l ( o j o m ) ,d e p “( o ? o :) ,其中的1 ,n 为场地号,m 为操作种类,d e p l ( 滓1 , n ) 为涉及场地i 的操作序列组成的子d e p ,亦既全局事务的第i 个子事 务。 全局事务在并发执行时要求满足事务的原子性( a ) 、一致性( c ) 、 隔离性( i ) 、持久性( d ) ,既a c i d 性。全局事务的子事务在调度执 行时也要求可串行性、可恢复性。 为了完成各场地的子事务的处理功能,全局事务必须为每一子事务 在相应的场地上创建一个代理者进程,每一个代理者都是一个局部进程。 同时,为了协调各个子事务的操作,全局事务还要启动一个协调者进程, 来控制和协调各代理者间的操作,进行代理者间的通讯。 2 6 5 可串行化原理 定义2 6 - 1 一个事务是一个偏序集:t i t m ( i 么i ) ,其中 i 是操作集,包含 r i x ,w i x lx 是数据项) u a i lc i ; i 中a i 与c i 两者只出现一个; a i 或c i 是e i 中最后一个操作符; 如果r i x ,w i x i ,则它们必须满足r i x s ,以防有的机器出现崩溃。 大连理工大学硕士学位论文第三章分布式处理系统的研究 如果接受请求的管理者发现没有可用处理器数目,它把请求传给它 的上层管理者,如果它的上层领导也不能满足要求,则继续向上传,直 到传到能满足要求的层次。在那一层上,领导把读请求分成几部分,然 后把它们传给它的下级领导,它的下级再进行分配,直到把请求传到底 层,在这一层,处理器被标为“忙碌”,然后把实际分配的处理器数逐级 向上汇报。 为确保该策略工作良好,r 必须足够大,从而使概率高到有足够的 工人来处理整个作业。否则请求将不得不沿树形结构上移一层重新开始, 浪费时间和计算机能力。另一方面,如果r 太大,分配处理器就过多, 这样就浪费了计算机能力,而且直到汇报返回到顶层才能释放这些资源。 3 3 3 4 分布式启发算法 e a g e re ta 1 ( 1 9 8 6 ) 描述了一种分布式算法,当创建一个进程时, 创建该进程的机器向个随机选择的机器发送探测消息,询问它的负载 是否低于某个阀值。如果是,就把该进程发给它。如果不是,就去探测 另一机器。这种探测并不是无止境的。如果经过n 次探测仍没找到合适 的机器,就中止算法并在原先的机器上运行次进程。 针对这个算法的分析队列模型己被提出并进行了研究,发现该算法 性能良好,并在许多情况下保持稳定。这些情况包括:不同的阀值,传 输费用,探测次数限制。 3 3 3 5 竞价算法 竟价算法将计算机系统当作一个小型的经济系统,它有购买者和服 务销售者,并根据供需情况来调整价格( f e r g u s o ne ta l ,1 9 8 8 ) 。在该 经济系统中关键的角色是进程和处理器,进程为了完成工作须购买 c p u 时间,处理器把它的时间拍买给出价最高的进程。 每个处理器把它的大致售价放在一个公共的可读文件中,这个价格 大连理工大学硕士学位论文第三章分布式处理系统的研究 不是保价,只指示它服务的价值。不同的处理器的价格不一样,取决于 它们的速度、主存大小和其它硬件。作为提供服务的性能指标。 当一个进程想启动一个子进程时,它首先逐个检查,看谁当前能提 供它所需要的服务。然后再从提供服务的处理器中选出合格的。 处理器收集发给它们的报价,然后选出一个。赢家和输家均给出通告, 然后赢家进程开始运行。服务器的发布价格被更新以反映新的价格。 大连理工大学硕士学位论文第四章分布式p d m 系统的技术研究 第四章分布式p d m 系统的技术研究 产品数据管理( p r o d u c t d a t a m a n a g e m e n t - - - p d m ) 以产品为中心, 通过计算机网络和数据库技术,把企业生产过程中所有与产品相关的信 息和过程集成起来,统一管理,使产品数据在其生命周期内保持一致、 最新和安全,为工程技术人员提供一个协同工作的环境,从而缩短产品 研发周期、降低成本、提高质量,为企业赢得竞争优势。企业的实际需 求促进了p d m 产品的发展,市场上出现很多成熟的产品,如s d r c 公 司的m e t a p h a s e ,e d s 的i m a n 等。前期的p d m 产品侧重于部门级的 设计环节的数据管理与共享,随着用户需求的提高和技术的发展,贯穿 企业全过程的企业级p d m 系统成为开发热点,要求这种系统能遵循一 定的规范,充分集成现有的应用系统,对跨地域企业的产品数据同样实 现信息集成。 下面内容是笔者对分布式系统和p d m 系统研究的归纳,并就分布 式p d m 系统中的集成问题给出了自己的解决。 4 1p d m 功能分析 4 1 1p d m 发展简介 p d m 技术的发展可以分为以下三个阶段:配合c a d 工具的p d m 系统阶段;专业p d m 产品产生阶段和p d m 的标准化阶段。 1 配合c a d 工具的p d m 系统阶段 早期的p d m 产品诞生于2 0 世纪的8 0 年代初。在当时,c a d 已经 在企业中得到了广泛的应用,工程师们在享受c a d 带来好处的同时, 也不得不将大量的时间浪费在查找设计所需信息上,对于电子数据的存 储和获取的新方法需求变得越来越迫切了。针对这种需求,各c a d 厂 家配合自己c a d 软件推出了第一代p d m 产品,这些产品的目标主要 大连理工大学硕士学位论文第四章分布式p d m 系统的技术研究 是解决大量电子数据的存储和管理问题,提供了维护“电子绘图仓 库”的功能。这一阶段系统功能较弱、集成能力和开放程度较低等问题。 2 专业p d m 产品阶段 通过对早期p d m 产品功能的不断扩展,最终出现了专业化的p d m 产品,如s d r c 公司的m e t a p h a s e 和u g s 的i m a n 等就是第二代p d m 产品的代表。与第一代p d m 产品相比,在第二代p d m 产品中出现了许 多新功能,如对产品生命周期内各种形式的产品数据的管理能力、对产 品结构与配置的管理、对电子数据的发布和更改的控制以及基于成组技 术的零件分类管理与查询等,同时软件的集成能力和开放程度也有较大 的提高,少数优秀的p d m 产品可以真正实现企业级的信息集成和过程 集成。 3 p d m 的标准化阶段 1 9 9 7 年2 月,o m g 组织公布了其p d me n a b l e r 标准草案。作为p d m 领域的第一个国际标准,本草案由许多p d m 领域的主导厂商参与制订, 如i b m 、s d r c 、p t c 等。p d me n a b l e r 的公布标志着p d m 技术在标准 化方面迈出了崭新的一步。p d me n a b l e r 基于c o r b a 技术,就p d m 的 系统功能、p d m 的逻辑模型和多个p d m 系统间的互操作提出了一个标 准。这一标准的制订为新一代标准化p d m 产品的发展奠定了基础。 4 1 2p d m 系统的功能 在企业中,大量与产品相关的数据往往分布在多部门,甚至是多区 域中,而且这些数据的格式也是多样的,如文本文件、数据库、图纸文 件等,对这些数据的查询、浏览、共享

温馨提示

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

评论

0/150

提交评论