(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf_第1页
(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf_第2页
(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf_第3页
(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf_第4页
(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(计算机软件与理论专业论文)基于net的分布式数据库访问技术研究及改进.pdf.pdf 免费下载

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

文档简介

摘要 随着信息的膨胀和网络的普及,那种只能对单一数据库进行访问的方式己不能 满足需要,人们增加了处理分布式数据库的需求。在设计分布式数据库访问工具时, 最重要的问题是如何使用户的访问方便而高效,也就是用户意识不到自己是在访问 位于不同主机上的数据,操作分布式数据库就像操作本地数据库一样简单。根据这 一目标,本文就基于n e t 的分布式数据库访问技术进行了研究。 本文首先介绍了分布式数据库理论及n e t 技术,分析了几种基本的数据库访问 技术,包括:开放数据库连接( o d b c ) 、数据访问对象( d a o ) 、远程数据对象( r d o ) 、 j a v a 数据库连接( j d b c ) 及一致数据访问技术( o l ed b a d o ) 。然后着重对n e t f r a m e w o r k 的最新数据库访问技术a d o n e t 的体系结构、对象模型、各个对象的 重点特性等进行了深入的分析。在以上理论分析的基础上,提出了基于a d o n e t 的 分布式数据库查询方法,对a d o 及a d o n e t 在数据访问效率方面进行了比较测试, 并探讨了如何利用存储过程优化a d o n e t 应用程序。 但是a d o n e t 在数据库访问方面也还存在一定问题,最主要的就是没有引入对 象关系映射技术。因此,本文以解决a d o n e t 的在数据库访问方面存在的问题为目 标,在a d o n e t 的基础上引入了对象关系映射技术并构建了一个可复用的数据库访 问中间件o r m ( o rm a p p i n g ) ,并将其成功地应用于项目在线测评系统的开发中。 关键词:分布式数据库访问;n e t , a d o n e t ;对象关系映射 a b s t r a c t a l o n gw i t hi n f o r m a t i o ne x p a n d i n ga n dn e t w o r kp o p u l a r i z a t i o n , t h ew a yt h a t a c c e s s i n gs i n g l ed a t a b a s e d o e s n t s a t i s f y t h ed e m a n d n er e q u i r e m e n tt oa c c e s s d i s t r i b u t e dd a t a b a s ei si n c r e a s e d 1 1 l ev e r yi m p o r t a n tp r o b l e mw h e nd e s i g nad i s t r i b u t e d d a t a b a s ea c c e s s i n gt o o li sh o wt om a k eu s e r sa c c e s sd a t ac o n v e n i e n t l ya n de f f i c i e n t l y a c c e s s i n gd a t al o c a t i n ga td i f f e r e n ts e r v e r si sn o tb e e na w a r e ,a n dd i s t r i b u t e dd a t a b a s ei s m a n i p u l a t e da si f l o c a ld a t a b a s ei sm a n i p u l a t e d a c c o r d i n gt ot h i sg o a l s o m er e s e a r c ho n d i s t r i b u t e dd a t a b a s ea c c e s s i n gt e c h n o l o g yb a s e do n n e tf r a m e w o r kw a sd o n ei nt h i s p a p e r d i s t r i b u t e dd a t a b a s et h e o r ya n d n e tt e c h n o l o g yw e r ei n t r o d u c e da tf i r s t , t h e ns o m e b a s i cd a t a b a s e a c c e s s i n gt e c h n o l o g i e s w e r e a n a l y z e d ,i n c l u d i n go p e nd a t a b a s e c o n n e o t i 嘶( o d b c ) ,d a t aa c c e s s i n go b j e c t ( d a o ) ,r e m o t ed a t ao b j e c t ( r d o ) ,j a v a d a t a b a s ec o n n e c t i v i t y ( j d b c ) a n du n i v e r s a ld a t aa c c e s st e c h n o l o g y ( o l ed b a d o ) a d o n e tt e c h n o l o g yi st h eu pt od a t ed a t a b a s e a c c e s s i n gt e c h n o l o g yi n n e t f r a m e w o r k n l es y s t e mf r a m e w o r ka n dc h a r a c t e r i s t i c so fo b j e c t si na d o n e tw e r e a n a l y z e dt h o r o u g h l y o nt h ef o u n d a t i o no fa b o v et h e o r e t i c a la n a l y s i s ,aq u e r ym e t h o do f d i s t r i b u t e dd a t a b a s eb a s e do na d o n e tw a sb r o u g h tf o r w a r d 1 1 1 ed a t aa c c e s s i n g e f f i c i e n c yb e t w e e na d oa n da d o n e tw a gt e s t e d a n dt h ew a yt h a to p t i m i z ea p p l i c a t i o n p e r f o r m a n c ew i t hs t o r e dp r o c e d u r ew a sd i s c u s s c d h o w e v e r , s o m ep r o b l e m si nt h ed a t a b a s ea c c e s s i n go fa d o n e te x i s t e d t h em o s t i m p o r t a n tp r o b l e mw a st h a t t h e r ew a sn oo b j e c t r e l a t i o nm a p p i n g t e c h n o l o g yi n a d o n e t s o i tw a sa i m e dt os o l v et h ee x i s t i n gp r o b l e mo fw h i c ha d o n e ta c c e s s d a t a b a s ei n v o l v e d o b j e c t r e l a t i o nm a p p i n gt e o h n o l o g yb a s e do na d o n e tw a s i n t r o d u c e d ,a n do n ed a t a b a s ea c c e s s i n gf r a m eo r mw a gs t r u c t u r e d t h eo r mh a s a l r e a d ys u c c e s s f u l l yb e e na p p l i e dt ot h eo n - l i n et e s t i n gs y s t e m k e yw o r d s :d i s t r i b u t e dd a t a b a s ea c c e s s i n g ;n e t ;a d o n e t ;o rm a p p i n g n 学位论文独创性声明 本人声明,所呈交的学位论文系本人在导师指导下独立完成的研究成果。文中 依法引用他人的成果,均已做出明确标注或得到许可。论文内容未包含法律意义上 已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成 果。 本人如违反上述声明,愿意承担由此引发的一切责任和后果。 论文作者签名:岳敞 日期:跏7 年r 月肜日 学位论文知识产权权属声明 本人在导师指导下所完成的学位论文及相关的职务作品,知识产权归属学校。 学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利等权利。本人离校 后发表或使用学位论文或与该论文直接相关的学术论文或成果时,署名单位仍然为 青岛大学。 本学位论文属于: 保密口,在年解密后适用于本声明。 不保密留。 ( 请在以上方框内打“4 ”) 论文作者签名: 届礅 新鹳:j i 弘 日期:2 卿年r 月f 6 日 醐2 7 钳肘佃 ( 本声明的版权归青岛大学所有,未经许可,任何单位及任何个人不得擅自使用) 7 5 第一章绪论 1 1 课题的研究背景和意义 第一章绪论 随着计算机硬件、软件技术的飞速发展和计算机系统在各行各业的广泛应用, 数据己经成为各种机构的宝贵资源,数据库系统对于当今科研部门、政府机关、企 事业单位等来说都是至关重要的“1 。 数据处理经历了三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段。 数据库系统又经历了三个阶段:网状数据库、层次数据库和关系数据库。1 。数据库 系统是针对文件系统缺乏共享和对数据的集中统一管理而提出的。数据库对数据的 管理具有持久性、有效性和共享性的特点,极大地减少了数据的冗余,消除了数据 不一致的隐患,提高了存储和查询效率。数据库系统对分散在各处的应用数据相对 地集中到一个数据库中,进行集中统一的管理。由于开始阶段没有注意到地域分散 的特定需求,过分的集中又产生了不协调。随着数据库技术在各个领域中的应用不 断发展,集中数据库渐渐显示出其不足之处,人们期望着符合现实需要的、能处理 分散地域的、具备数据库管理特点的新的数据库系统出现。伴随着计算机网络的日 趋成熟和分布式系统的不断完善,分布式数据库系统被提了出来“1 。计算机网络虽 然可以实现地域分散情况下的数据传输,以达到数据共享的目的,但它只是全文件 的复制,缺乏对数据的管理。因此,人们设想以“数据库系统+ 计算机网络”来实现 分布式数据库系统,既达到对数据的集中管理与共享,又能使地域的分散性被系统 隐蔽起来。 在设计分布式数据库访问工具时,最重要的问题是如何使用户的访问方便而高 效,也就是用户意识不到自己是在访问位于不同主机上的数据,操作分布式数据库就 像操作本地数据库一样简单。传统的数据库访问技术已渐渐不能满足高速存取、断 开连接存取和内置的全面的x m l ( e x t e n s i b l em a r k u pl a n g u a g e ) 支持等的需要,研 究分布式数据库访问技术也就成为数据库研究的主要方向之一。目前基本的数据库 访问技术主要有o d b c ( o p e nd a t a b a s ec o n n e c t i v i t y ) 、基于o d b c 的d a o ( d a t a a c c e s s i n go b j e c t ) 和r d o ( r e m o t e d a t a o b j e c t ) 、j d b c ( j a v a d a t a b a s e c o n n e c t i v i t y ) 、o l ed b a d o ( a c t i v e xd a t ao b j e c t ) 。1 。他们都是在不同时期出现 并被广泛使用的技术,很多技术现在仍很流行,本文仔细分析比较了这些技术的优缺 点和适宜场合,以便开发出高效的数据库应用程序。 实现分布式数据库访问所要解决的主要问题是数据库的透明访问,目前流行的 青岛大学硕十论文 实现数据库互联访问的两种方式是采用公共程序编程接口和专业数据库网关产品。 国内对于分布式数据库访问技术的研究一股基于公共程序编程接口,在某种平台的 基础上,设计一个可复用的数据库访问中间件框架,以实现数据库的透明访问。具 体来讲,主要有:上海交通大学基于j d b c 的分布式数据库访问技术研究,大连理工 大学基于p o w e r b u i l d e r 的分布式数据库访问,西南石油学院基于移动a g e n t 的分布 式数据库访问技术,还有学者提出用p h p 程序实现跨平台异构分布式数据库访问, 另外,在现有数据库访问技术基础上,引入分布对象c o r b a ( c o m m o no b j e c tr e q u e s t b r o k e ra r c h i t e c t u r e ) 技术,也可实现分布式数据库的访问。 m i c r o s o f t n e t 是微软推出的新一代基于互联网平台的软件开发构想,其背后 的基本理念就是:不再关注单个的网站和单个设备,而是要让所有的计算机群、相关 设备和服务商协同工作,提供更加广泛和丰富的解决方案“3 。人们将能够控制何种 信息、在何时、以何种方式传递给自己。n e t 框架是一种新的计算平台。它使得分 布式i n t e r n e t 应用程序的开发变得更加简单。n e t 框架提供了一个一致的面向对 象的编程环境,并可以按照工业标准生成所有通信,以确保n e t 框架的代码和任何 其他代码集成。 n e t 框架中有两个主要组件:公共语言运行库( c l rc o m m o nl a n g u a g er u n t i m e ) 和n e t 框架类库。公共语言运行库是基础,它提供核心服务( 如内存管理、线程管 理和远程处理) ,类库是一个综合性的面向对象的可重用类型集合,可以使用它开 发如w e b 窗体和x m lw e bs e r v i c e s 等多种应用程序。 n e t 框架中的a c t i v e x 数据 对象( a d o n e t ) 是向n e t 程序员提供的公开数据访问服务的类。它提供对m i c r o s o f t s q ls e r v e r 等数据源以及通过o l ed b 和x m l 公开的数据源的一致访问。数据共享 使用者应用程序可以使用a d o n e t 来连接到这些数据源,并检索、操作和更新数据。 a d o n e t 的设计目标是:提供断开式数据结构,与x m l 紧密集成,组合来自多个不 同数据源的数据的通用数据表示形式以及为与数据库交互而优化的功能“1 。 随着微软n e t 的推出,a d o n e t 为实现数据访问带来了巨大的变革。另外,n e t 中的分布式对象技术n e tr e m o t i n g 大大简化了系统化创建和扩展分布式应用程序 的方法。这个程度的系统化让开发人员效率更高,让系统更加易于维护,而且可能 还会让企业成本投入达到最小“1 。n e tr e m o t i n g 提供了一种允许一个应用域中的对 象与另一个应用域中的对象进行交互的框架。因此,n e tr e m o t i n g 对象非常适合 通过网络访问资源,而又无需处理由基于s o a p 的w e bs e r v i c e 所带来的难题,并且 不需要创建存根程序和骨架文件,使用起来比j a v a 的r m i 简单。总之,n e t 中的 a d o n e t 数据访问技术和n e tr e m o t i n g 分布式对象技术使得对分布式数据库的访问 更加简单高效,目i j i 国内对基于n e t 的分布式数据库访问技术的研究还较少。本文 在深入分析a d o n e t 及n e tr e m o t i n g 技术的基础上,提出了一种基于n e t 的分布 第一章绪论 式数据库访问方法。 另外,在目前的网络环境下,进行分布式系统设计开发时,除了要构造一个可 扩展、可移植、适用性强的系统模型外,应用系统的性能也十分重要;另一方面, 随着系统管理的数据量的增加,以及客户应用的增多,数据库服务性能将影响到整 个系统的效率,因此,如何改善数据库应用程序的性能也是目前数据库研究的热点 问题之一。 a d o n e t 在数据库访问方面具有强大的功能,在开发企业级应用的数据库访问 方面也给开发者带来了很大的便利。但与成熟的j z e e 平台相比,还存在一些问题, 其中主要的就是没有引入o r 映射技术。目前,在软件开发领域,最常用到的技术 是面向对象技术,而分布式数据库大部分基于关系模型。由于对象模型和关系模型 之间存在一种基本的阻抗不匹配,导致使用关系数据库的面向对象系统开发人员通 常要花费大量的时间来将对象持久化。因此要使面向对象的应用实用化,需要引入 对象关系映射技术来避免对象和关系之间的阻抗不匹配“1 。 对象关系映射有许多不同的实现方法,各种方法在不同方面都有不同的优点和 缺点,目前,使用较多的方法有三种:直接将s q l 语句嵌入到业务类中;抽象出数 据层,将s q l 语句集中到数据类中,并于业务类相对应;建立一个持久层,使其自 动完成业务对象到数据库的映射0 1 。 在基于对象关系映射技术方面,j 2 e e 阵营推出了多个数据库访问中间件产品 如h i b e r n a t e ,j d o 等等,利用这些数据库访问中间件产品,开发人员可以迅速而简 便的开发出优秀的面向对象的数据访问存取逻辑组件”1 。而在a d o n e t 平台上却没 有类似的产品。且a d o n e t 对面向对象数据的表现能力还不够丰富,对面向对象的 特性还不能够全面地支持。基于以上需求,迫切需要提出一种基于a d o n e t 和对象 关系映射技术的数据库访问中间件。 1 2 本课题的工作及研究方法 本课题主要完成了以下几方面的工作: l 、分析比较了几种基本数据访问技术的优缺点及适用场合,对a d o 与a d o n e t 在数据访问效率方面进行了比较测试; 2 、在以上分析研究的基础上,提出了一种基于a d o n e t 的分布式数据库查询方 法; 3 、探讨了如何使用存储过程优化a d o n e t 应用程序: 4 、在a d o n e t 的基础上,设计实现了一个数据库访问中间件o r m ,该中间件解 决了对象关系映射问题,并将其成功地应用于在线测评系统的实际开发中。 3 青岛大学硕十论文 本文采取的研究方法主要有:广泛采用比较研究方法。对不同的数据库访问方 式进行比较;理论分析方法,从理论上研究分析不同的数据库访问技术的发展及其 特点;与实践相结合,对提出的新方法、新技术应用于具体的软件开发中,一方面 检验了方法的有效性,另一方面,在实际应用中发现了方法的缺陷,为下一步的研 究工作指明了方向。 1 3 论文内容及组织 本论文在深刻理解分布式数据库及n e t 技术的基础上,分析比较当前流行的各 种分布式数据库访问技术的优缺点,着重就n e t 的最新数据库访问技术a d o n e t 的体系结构、对象模型、各个对象的重点特性等进行深入的分析和研究,并对相关 的性能优化进行测试。最后,以a d o n e t 在数据库访问方面存在的问题为目标,提 出了一个解决o mm a p 问题的o r m 中间件,并将其应用于具体的实践。 论文组织安排如下:第一章介绍了课题的研究背景、国内外研究现状及本文所 做工作和研究方法:第二三章介绍了本课题的理论基础分布式数据库及n e t 技 术;第四章分析了几种基本的数据库访问技术,包括o d b c 、基于o d b c 的d a o r d o 、 j d b c 、o l ed b a d o ;第五章,本文的重点,深入分析了a d o n e t 技术,提出了一种 基于a d o n e t 的分布式数据库查询方法,并探讨了如何使用存储过程优化a d o n e t 应用程序;第六章,本文的应用实现部分,在a d o n e t 的基础上,设计实现了一个 数据库访问中间件o r m ,并将其成功地应用于在线测评系统的实际开发中。 4 第二章分布式数据库系统简介 第二章分布式数据库系统简介 2 1 分布式数据库起源 分布式数据库( d i s t r i b u t e dd a t a b a s e ,d d b ) 是数据库技术与计算机网络技术相 结合的产物。分布式数据库符合系统管理的思想与目标,特别适合于一些地域上分 散的大团体、大机构的组织结构与管理原则。在这些单位中,往往既要有各予单位 的分散管理,也要在高一级层次上实现协同管理,既要有局部控制,同时也需要高 层次的协作。这种协同管理要求各子单位之间有灵活的信息流动过程和信息的统一 管理。因此,以往的集中式数据库越来越不能满足它们日益增长的应用需要。人们 在考虑新的数据管理方案时,越来越认识到建立分布式数据库系统的必要性。 另一方面,在数据管理发展的以往十年中,集中式数据库作为一种主要的工具, 己经广泛应用于这些大机构的数据管理。大机构一般都拥有数量不等的集中式数据 库,构成各部门或子单位的信息系统。随着应用要求的不断提高,人们越来越感觉 到集中式数据库的局限性,迫切需要将这些子系统通过日益廉价的通信媒介连接起 来,组成一个统一的分布式数据库。当然,也有可能另起炉灶,重新建立一个适合 于全范围的分布式数据库系统。 一个分布式数据库是一个处理属于一些相关联的数据库数据的系统,这些相关 联的数据库称作节点。一般来说,地域上它们分布在由数据通信网络相连的不同物 理场所,节点也可以在同一机器上,这里关键是可以处理一些数据库的机制,而不 必考虑其通信线路的性质n ,。 分布式数据库系统中存在两种类型的用户:全局用户和局部( 或节点) 用户。全局 用户看到的是分布式数据库的全局视图,局部用户看到的是某一个节点数据库的局 部视图。全局用户在分布式数据库管理系统的控制下,处理整个分布式数据库中的 数据;局部用户在局部数据库管理系统的控制下,处理某一特殊节点的数据,其理 想情况应与分布式数据库的存在无关。一般用全局模式描述d d b 中数据的逻辑结构, 即全局视图。相应地,用局部级模式表示对节点数据的描述,即局部视图。分布式 数据库必须提供描述全局视图与局部视图的数据模型。 2 2 分布式数据库系统的定义及特点 2 2 1 分布式数据库系统的定义 5 青岛大学硕十论文 1 、分布式数据库系统 分布式数据库系统( 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 ) ,是一组数据集, 逻辑上它们属于同一系统,而物理上它们分散在用计算机网络连接的多个场地,并 统一由一个分布式数据库管理系统管理。与传统的集中数据库系统一样,分布式数 据库系统也包含两个重要的成分:分布式数据库和分布式数据库管理系统。 2 、分布式数据库 分布式数据库( d i s t r i b u t e dd a t a b a s e ,d d b ) ,是计算机网络环境中各场地( s i t e ) 或节点( n o d e ) 上数据库的逻辑集合。为了区别,我们称传统方式的数据库系统为集 中式数据库系统( d b ) ,而称分布式数据库系统中的各场地数据库为局部数据库 ( l o c a ld b ,l d b ) 。也就是说,d d b 是一组结构化的数据集合,逻辑上隶属于同一系 统,而物理上分布在计算机网络的各节点上。需要强调的是这组数据的分布性和逻 辑协调性。 分布性,是指数据不是存放在单一场地为单个计算机配置的存储设备上,而是 按全局需要将数据划分成一定结构的数据子集,分散地存储在各个场地( 节点) 上。 逻辑协调性,是指各场地上的数据子集,相互间由严密的约束规则加以限定, 而在逻辑上是一个整体。 由此可见,分布式数据库的分布性使之有别于集中式数据库:而分布式数据库的 逻辑协调性又有别于网络连接的分散数据库,在数据独立性上更是远远优于分散数 据库0 1 。但我们仍然可以看到,集中式数据库是分布式数据库的基础,而计算机网 络则是分布式数据库的必要环境。 3 、分布式数据库管理系统 分布式数据库管理系统( d d b m s ) 是分布式数据库系统中的一组软件,负责管理 分布环境下逻辑集成数据的存取。分布式数据库管理系统对d d b 的管理分两个层次: 一是全局数据库管理系统( g d b m s ) ,负责接收用户请求、根据全局字典对用户请求 进行优化,形成分布计划,将分布计划交给局部数据库管理系统执行,并且组装执 行结果显示给用户:二是局部数据库管理系统( l d b m s ) ,它的功能与传统的集中式 数据库管理系统相似,负责访问局部数据库,在分布透明的分布式数据库系统中, 用户只与全局数据库管理系统打交道,局部数据库管理系统对用户透明。 4 、匀质与异质 分御式数据库管理系统的一个重要性质是它是匀质的还是异质的。匀质的d d b m s 中每个站点的局部d b m s 都相同,异质的d d b m s 中至少使用两个不同的局部d b m s 。 2 2 2 分布式数据库系统的特点 l 、可靠性:在d d b 中,单一部件的失效,不一定使整个系统失效。此外分布式 6 第二章分布式数据库系统简介 数据库可通过在多个不同的场所冗余地存放数据来恢复失效的数据。 2 、自治性:d d b 符合系统管理的思想及一些机构的组织结构。d d b 允许每个场所 有各自的自主权,即可以对自己管理的信息加以控制,可以指定各自使用信息的策 略。 3 、模块性和系统的升级能力:d d b 是将一些功能较小的数据库综合成一个功能 更强的数据库系统,用来满足任何一个单一的数据库都无法满足的应用要求。 4 、费用低:由于系统的模块性,从长远的发展的观点来看,比相同功能的集中 式数据库的成本要低。 5 、效率及可用性:在d d b 中,可以通过合理的分布数据,使得数据存储在其常 用的地点,这样既缩短了相应的时间,减少了通信费用,又提高了数据的可用性。 6 、灵活性:除了系统结构上的灵活性以外,通过数据的动态传递与冗余,d d b 可以适应应用的不断变化。 7 、分布透明性和冗余透明性:所谓分布透明性和冗余透明性,是指用户或用户 程序在d d b 上操作时,不必知道数据的分布与冗余。 8 、数据的分割与分布 9 、数据的冗余存储 l o 、系统的分层结构:由于d d b 是一些相联的数据库的集合,因此整个系统的结 构是分层的:局部数据库与全局数据库、局部控制与全局控制、局部数据模型与全局 数据模型、局部与全局数据操作语言,等等。 1 1 、优化处理:由于d d b 结构复杂,再加上通信费用昂贵。因此d d b m s 往往需要 对用户的查询和事务作优化处理。 1 2 、并行性:数据的分布与冗余,大大提高了并行处理的可能性。并行处理是分 布式数据库的基本特征之一。 1 3 、数据的完整性与一致性:防止数据库中的数据受到无效的更新,保证冗余数 据的一致性,从而给用户提供有效的、正确的数据,也是d d b 的一个重要特征。 2 2 3 分布式数据库系统的分类 对分布式数据库系统的分类虽没有统一的标准,但较为认同的分类方法有两种。 一种是按构成分布式数据库系统的局部数据库管理系统的数据模型来进行分类;另 一种是按分布式数据库系统的全局控制系统类型来进行分类。 1 、按局部数据库管理系统的数据模型分类 按分布式数据库系统中的各站点中的局部数据库管理系统的数据模型对d d b s 进行分类是一种常见的分类方法。按照这种分类方法,分布式数据库系统可以分为 同构型( h o m o g e n e o u s ) d d b s 和异构型( h e t e r o g e n e o u s ) d d b s 。 7 青岛大学硕十论文 2 、按分布式数据库控制系统的类型分类 按分布式数据库控制系统的类型来进行分类,可以分为集中型d d b s 、分散型 d d b s 和可变型d d b s 三类。 2 3 分布式数据库系统的结构 2 3 1 分布式数据库系统的模式结构 集中式数据库系统由三级模式结构组成。即内模式、概念模式、外模式。分布 式数据库中,局部数据模式是各站点上局部数据库系统的模式结构,具有集中式数 据库系统的三级模式结构;全局数据模式是用来协调各局部数据模式使之成为一个 整体的模式结构。 全局数据模式具有四个层次:全局外模式、全局概念模式、分片模式、分布模式。 l 、全局外模式( g l o b a le x t e r n a ls c h e m a ) : 全局外模式是全局应用的用户视图,是全局概念模式的逻辑子集。 2 、全局概念模式( g l o b a lc o n c e p t u a ls c h e m a ) : 全局概念模式定义分布式数据库的全局数据的逻辑结构。 3 、分片模式( f r a g m e n t a t i o ns c h e m a ) : 分片模式将全局关系分解为若干个不相交的部分,即数据分片。分片模式定义 片段以及定义全局关系与片段之间的映像,这种映像是一对多的,即每个片段来自 一个全局关系,而一个全局关系可分成若干片段。 4 、分布模式( a i l o c a t i o ns c h e m a ) : 由数据分片得到的片段仍然是分布式数据库的全局数据,是全局关系的逻辑部 分,每一个片段在物理上可定位( 分配) 于网络的一个或多个站点上。分布模式根据 选定的数据分配策略,定义各片段的物理存放站点。在分布模式中,定义的映像类 型确定了分布式数据库的数据分配是否冗余,若映像是一对多的,即一个片段分配 到多个站点重复存放,则数据分配是冗余的,否则是不冗余的。 分布式数据库系统的局部数据模式由局部概念模式与局部内模式组成。 l 、局部概念模式( l o c a lc o n c e p t u a ls c h e m a ) : 一个全局关系经逻辑划分成一个或多个逻辑片段,每个逻辑片段被分配在一个 或多个站点上,称为该逻辑片段在某站点上的物理映像或物理片段。分配在同一站 点上的同一个全局概念模式的若干片段( 物理片段) 构成了该全局概念在该站点上的 一个物理映像。 2 、局部内模式( l o c a li n t e r n a ls c h e m a ) : 局部内模式是分布式数据库中关于物理数据库的描述,类似于集中式数据库中 r 第二章分布式数据库系统简介 的内模式。 2 3 2 分布式数据库系统的体系结构 分布式数据库系统由分布式数据库管理系统和分布式数据库构成。分布式数据 库管理系统是对数据进行管理和维护的一组软件,是分布式数据系统的重要组成部 分,是用户与分布式数据库的接口。 分布式数据库管理系统包括三个主要成分:全局数据库管理系统( g d b m s ) ,局部 数据库管理系统( l d b m s ) 和通信管理系统( c m ) 。 分布式数据库管理系统应能支持分布式数据库系统的四个基本功能: 1 、应用程序的远程数据库操作; 2 、支持分布式数据库系统的完全或部分透明性; 3 、对分布式数据库( g d b 和l d b ) 的管理和控制,因此,除具有集中式数据库管 理系统的功能外,还必须对各站点数据库提供映射,以便集中管理和控制。 分布式数据库系统由下列部分组成: 1 、多台计算机设备,并将这些多台计算机连接成网络; 2 、计算机网络设备,网络通信的一组软件; 3 、分布式数据库管理系统; 4 、分布式数据库,包括全局数据库( g d b ) 和局部数据库( l d b ) ; 5 、分布式数据库管理员( d b a ) 及用户( u s e r ) ,包括全局d b a 和局部d b a 以及全 局用户及局部用户。 9 青岛大学硕十论文 第三章n e t 平台概述 n e t 框架是一种新的计算平台,它包含了操作系统上软件开发的所有层,它提供 了微软平台( 或者说任何平台上) 所曾见过的组件技术、呈现技术和数据技术的最丰 富的集成级别,整个体系结构已经被创建为易于在高度分布式i n t e r n e t 环境中进行 应用程序开发,就像开发传统的桌面系统一样简单“”。 3 1 n e t 的构建 简单来讲,m i c r o s o f t n e t 是微软的一项战略,它将软件的供应当作一项服务 来看待,就像微软总裁兼首席执行官史蒂夫,鲍尔墨所说:“n e t 代表了一个集合、 一个环境、一个编程的基本结构,作为个平台来支持下一代的互联网。n e t 也是 一个用户环境,是一组基本的用户服务,可以作用于客户端、服务器或任何地方, 与改编成模式具有很好的一致性,并有新的创意。因此,它不仅是一个用户体验, 而且是开发人员体验的集合,这就是对n e t 的概念性描述。”m 1 n e t 平台包含广泛的产品系列,它们都是基于x m l 和i n t e r n e t 行业标准构建的, 提供从开发、管理、使用到体验x m lw e bj 艮务的每一方面。x m lw e b 服务将成为今天 正在使用的m i c r o s o f t 的应用程序、工具和服务器的一部分,并且将要打造出全新的 产品以满足所有业务需求“”。具体地说,m i c r o s o f t 是从工具、服务器、x m lw e b j 艮 务、客户端和n e t 体验这五个方面创建n e t 平台的,这五部分是n e t 的全部内容, 其中前四者组合到一起称之为n e t 平台,而n e t 体验则是建在该平台之上的应用。 1 、开发工具: m i c r o s o f tv i s u a ls t u d i o n e t 和m i c r o s o f t n e t 框架为开发人员创建、部署和 运行x m lw e b j 日务提供了一套完整的解决方案。它们使x m lw e b 的性能、可靠性和安 全性达到最佳化。 2 、服务器: n e t 的服务器基本结构是一系列用于生成、发布和操作w e bj 务的基础程序,包 括w i n d o w s j l 各种n e t 企业服务器。 3 、x m lw e b 服务: x m i w e b f 务提供应用程序与应用程序之| 、日j 交互的直接手段。应用程序以本地为 宿主,也可以以远程系统为宿主,利用x m l 和s o a e 消息通过i n t e r n e t 进行交互。它把 用户数据的控制权从应用程序移到了用户手上,做到了程序、服务和设备之间的简 第二章n e t 平台概述 单性和一致性,这保证了所有的交易都必须得到用户的同意。这些服务包含了 p a s s p o r t ( 用于用户身份验证) 、服务之间的消息传递、文件存储、用户个性设置的 管理、日历管理及其他功能。m i c r o s o f t 将在那些对n e t 基本结构起至关重要作用的 领域内提供一些块构建服务。大量的合作伙伴和开发商将对这些块构建服务作重要 的扩展。 4 、客户端: 客户端是指p c 、膝上型电脑、工作站、电话、手提型电脑、t a b l e tp c 和游戏控 制台以及其他智能设备。这些设备之所以“智能”,正是由于其能够访问x m lw e b 服务。智能客户端使用支持x m lw e b h 务的软件,不论客户端的位置、类型还是数量 如何,都可以访问数据。m i c r o s o f t 提供的一些n e t 客户端软件包括w i n d o w sc e , w i n d o w se m b e d d e d ,w i n d o w2 0 0 0 和w i n d o w sx p 。这些软件将为p c 、膝上型电脑、工 作站、智能电话、手提型电脑、t a b l e tp c 和b o x 游戏控制台提供动力。 5 、n e t 体验: n e t 体验可被用于多种设备。n e t 体验连入网络后就能有效地利用w e b 服务为 用户带来额外的价值,以更好地解决问题。n e t 体验是以用户为中心的。n e t 体验 的焦点在终端用户,使用基于身份验证的块构建服务来为用户验证、参数设定、通 知机制和用户数据提供服务。n e t 体验是x m lw e b 服务,通过它们,可以从i n t e r n e t 和独立的应用程序中以集成的方式访问信息1 。 3 2 n e t 的开发平台 n e t 开发平台在开发人员用以创造应用程序的技术和工具上都进行了根本的变 化。v i s u a ls t u d i o n e t 就是微软公司为实现其n e t 技术而开发的一整套工具组件, 它提供了一个用于在该平台上创建应用程序的可视化集成开发环境( i n t e g r a t e d d e v e l o p m e n te n v i r o n m e n t ,i d e ) 。集成开发环境( i d e ) 是目前计算机语言产品都具 备的一种工作环境,是进行程序设计的工作场所。程序员可以在集成开发环境中, 对源程序进行编辑和编译,对目标程序进行调试运行。 3 2 1v i s u a ls t u d i 0 n e t m i c r o s o f tv i s u a ls t u d i o n e t 是微软公司专为n e t 构建的下一代主流多语言 开发工具,是微软公司推出的最新一套完整开发工具,用于生成a s pw e b 应用程序、 ) ( m lw e bs e r v i c e s ,桌面应用程序和移动应用程序“”。 v i s u a ls t u d i o n e t 可以帮助开发人员使用他们自己选用的语言快速创建可缩 放的x m lw e b 服务和应用程序。其中包括的程序语言主要有:v i s u a lb a s i c n e t , 青岛大学硕十论文 v i s u a lc + + n e t 和v i s u a lc # n e t 等,全都使用相同的集成开发环境( i d e ) ,该 环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了n e t 框架的功能,此框架提供对简化a s pw e b 应用程序和x m lw e bs e r v i c e s 开发的关键 技术的访问。 微软的v i s u a ls t u d i o n e t 是针对n e t 框架而设计的,二者紧密结合。v i s u a l s t u d i o n e t 通过提供一个统一的集成开发环境及工具,提高了开发效率;集成了 多种语言支持;简化了服务器端的开发;提供了高效地创建和使用网络服务的方法。 3 2 2 n e t 框架 n e t 框架,即n e tf r a m e w o r k ,是微软n e t 开发的核心和基础。n e t 框架是 一个高产的、基于标准的、多语言应用程序执行环境,它处理基本管线杂务,使部 署更容易。它提供应用程序执行环境来管理内存和进行版本控制,改善了应用程序 的可靠性、可扩展性以及安全性。n e t 框架包括了2 个主要的部分:公共语言运行 时环境( c o m m o nl a n g u a g er u n t i m e ,c l r ) 和f r a m e w o r k 类库。f r a m e w o r k 类库中包 含了a s p n e t ,e n t e r p r i s es e r v i c e s ,a d o n e t 和w i n d o w sf o r m s 。 n e t 框架包含了在操作系统上进行软件开发的所有层。它使微软或其他平台上 的显示技术、组件技术和数据技术实现高度集成。该构架从最下面的内存管理和组 件加载层开始,向上到达显示拥护和程序接口的多种方式、在它们中间的一些层可 以提供开发人员需要的任何系统级功能。 我们来整体分析一下m i c r o s o f t n e t 开发框架。根据图3 1 所示的n e t 框架 体系结构图,我们可以直观地了解n e t 框架的主要组成部分:公共语言运行时环境 ( c o m m o nl a n g u a g er u n t i m e ,c l r ) 和一组公用层次类库。所有在n e t 开发平台上创 建的应用程序运行都需要运行这两个核心块。下面我们来进一步了解它们。 1 、公共语言运行时环境:c l r ( c o m m o nl a n g u a g er u n t i m e ) 公共语言运行时环境位于n e t 框架的最低层,是这个框架的基础,它提供许多 服务。这些服务有助于简化代码开发和应用程序的开发,同时也将提高应用程序的 可靠性。c l r 是一个运行并“管理”正在执行的代码的引擎。从安全角度来看,c l r 将n e t 框架的限制施加到正在执行的代码上并防止它表现出意外的行为“。 基于公共语言运行时环境开发的代码称为受控代码,它的运行步骤大体如下: 首先使用一种公共语言运行时环境支持的编程语言编写源代码,然后使用针对公共 语言运行时环境的编译器生成独立于机器的微软中间语占( m i c r o s o f t i n t e r m e d

温馨提示

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

评论

0/150

提交评论