WEB数据库异地并行设计_第1页
WEB数据库异地并行设计_第2页
WEB数据库异地并行设计_第3页
WEB数据库异地并行设计_第4页
WEB数据库异地并行设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、异地并行设设计中WEEB数据库库设计 近年年来,随着着Web技术术的蓬勃发发展,人们们已不满足足于只在浏浏览器上获获取静态的的信息,想想要通过它它发表意见见、查询数数据。随着着电子商务务的普及人人们开始参参与一些网网络商务活活动,这就就迫切需要要实现Weeb与数据据库的互连连1。产产品异地并并行设计对对数据的要要求有一定定的特殊性性,主要有有(1)产品数数据多种多多样。产品品设计,特特别是机械械产品设计计常常是大大型而又复复杂,在异异地通过不不同的设计计小组,按按不同的分分工设计同同一产品,所所要管理和和通讯的数数据类型随随着分工的的不同而有有不同的表表现形式,如如常规的数数字组成的的数据集,

2、以以图形、图图象形式表表达的产品品模型数据据,以文字字形式描述述设计的文文档,还有有图表、公公式等形式式,复杂多多样。(22)产品数数据交换频频繁,流量量大。产品品设计是一一个协同工工作的创造造性集体智智慧凝聚的的过程,要要使设计顺顺利进行,分分布在异地地的不同设设计小组之之间就要经经常性地进进行数据交交换,并且且有些形式式表达的产产品数据是是较大的文文件。(33)产品数数据的一致致性要求高高。分工合合作的不同同设计小组组之间的设设计任务是是彼此关联联,互相依依赖的。如如果其中一一个数据改改变了,相相关联的数数据必须跟跟着改变,在在Web数据据库设计时时必须考虑虑数据的一一致性问题题。(4)产

3、品数数据的并发发性访问频频繁。由于于异地产品品设计的特特殊属性,数数据的并发发性访问非非常频繁。所以,进进行基于IInterrnet的的产品异地地并行设计计的Webb数据库设设计与一般般的电子商商务不同,要要充分考虑虑以上属性性。本文结结合我们近近期开发的的机械产品品异地并行行设计系统统(RCDDS, RRemotte Cooncurrrentt Dessign Systtem),综综合比较了了多种当今今流行的网网络数据存存取技术,设设计出可靠靠安全的数数据库系统统。 1 Webb数据库连连接方案 1.1数据据库连接方方案选择RDO、DDAO和ADO是比比较常见的的Web数据据库访问技技术。

4、DAO (Dataa Acccess Objeects) 数据访访问对象是是第一个面面向对象的的接口,它它含有 MMicroosoftt Jett 数据库库引擎(由由 Miccrosooft AAccesss 所使使用),并并允许 VVisuaal Baasic 开发者通通过 ODDBC 象象连接到其其他数据库库一样,直直接访问到到 Acccess 表。DAOO 最适用用于单系统统应用程序序或小范围围本地分布布使用,对对大范围的的异地并行行设计显得得功能不够够强大。 RDO (Remoote DData Objeects) 远程数数据对象是是一个到 ODBCC 的、面面向对象的的数据访问问接口

5、,它它同易于使使用的 DDAO sstylee组合在一一起,提供供了一个接接口,形式式上展示出出所有 OODBC 的底层功功能和灵活活性。RDDO 在访访问 Jeet 或 ISAAM 数据据库方面有有一定的限限制,而且且它只能通通过现存的的 ODBBC 驱动动程序来访访问关系数数据库。但但是,RDDO 已被被证明是许许多 SQQL Seerverr、Oraccle 以及其他大大型关系数数据库开发发者经常选选用的最佳佳接口。RRDO 提提供了用来来访问存储储过程和复复杂结果集集的更多和和更复杂的的对象、属属性,以及及方法。对对异地并行行设计Weeb数据库库来说也不不是十分理理想。 ADO(AAc

6、tivveX DData Objeects)为为ActiiveX组组件中数据据库访问组组件,ASSP就是通通过它实现现对数据库库的访问。ADO 是 DAOO、RDO 的后继产产物。ADDO 2.0在功能能上与 RRDO 更更相似,而而且一般来来说,在这这两种模型型之间有一一种相似的的映射关系系。ADOO “扩展展”了 DAOO 和 RDOO 所使用用的对象模模型,这意意味着它包包含较少的的对象、更更多的属性性、方法(和和参数),以以及事件。例如,AADO 没没有与 rrdoEnnginee 和 rdooEnviironmment 对象相等等同的对象象,可以包包含 ODDBC 驱驱动程序管管理器

7、和 hEnvv 接口。尽管事实实上接口可可能是通过过 ODBBC OLLE DBB 服务提提供程序实实现的,但但目前也不不能从 AADO 中中创建 OODBC 数据源。ADO 是为 Miicrossoft最最新和最强强大的数据据访问范例例 OLEE DB 而设计的的,是一个个便于使用用的应用程程序层接口口。OLEE DB 为任何数数据源提供供了高性能能的访问,这这些数据源源包括关系系和非关系系数据库、电子邮件件和文件系系统、文本本和图形、自定义业业务对象等等等。ADDO 在关关键的 IInterrnet 方案中使使用最少的的网络流量量,并且在在前端和数数据源之间间使用最少少的层数,所所有这些都

8、都是为了提提供轻量、高性能的的接口。同同时 ADDO 使用用了与 DDAO和 RDOO相似的约约定和特性性,简化的的语义使它它更易于学学习。 ADO最早早是在IIIS中引入入的,主要要用于ASSP,用ADOO可以使服服务器端的的脚本通过过ODBCC存取和操操纵数据库库服务器的的数据。使使用ADOO的对象可可以建立和和管理数据据库的连接接,从数据据库服务器器请求和获获取数据,执执行更新、删除、添添加数据、获取ODDBC的错错误信息等等。ADOO是ASP方案案中最具吸吸引力的数数据库连接接控件,它它为用户提提供了连接接任何兼容容ODBCC的数据库库以及创建建全功能数数据库应用用程序的能能力。 AD

9、O具有有简单易用用、高速、占用资源源少等的优优点。不同同于DAOO和RDO,ADO有着着更高的执执行效率。ADO 对象模型型如图1aa所示。每每个 Coonnecctionn、Commmand、Recoordseet 和 Fieeld 对对象都有 Proppertiies 集集合,如图图1b所示。 a) b) 图1 ADDO对象模模型及属性性 应该说,AADO是微微软的下一一代数据库库连接技术术,用来全全面取代RRDO和DAO的数数据访问工工具。从发发展趋势来来看,ADDO今后将将逐步替代代老的DAAO特别是是RDO数据据访问接口口,成为新新的远程数数据访问方方法。所以以,选择AADO作为为产

10、品异地地并行设计计的Webb数据库接接口技术是是合适的。 1.2 AADO应用用分析 ADO 并并不是自动动和现存的的数据访问问应用程序序代码兼容容的。当 ADO 封装 DAAO 和 RDOO 的功能能性的时候候,必须将将许多语言言要素转换换为 ADDO 语法法。在某些些情况下,这这将意味着着要对现存存代码的某某些功能做做一个简单单转换。在在其他情况况下,最佳佳的做法可可能是用 ADO 的新功能能重写该应应用程序。 包含在 DDAO 和和 RDOO 模型中中的许多功功能被合并并为单个对对象,这样样就生成了了一个简单单得多的对对象模型。然而,由由于这个原原因,起初初可能会觉觉得找到合合适的 AA

11、DO 对对象、集合合、属性、方法,或或事件非常常困难。与与 DAOO 和 RDOO不同的是是,尽管 ADO 对象是分分层结构的的,但在分分层结构范范围之外也也是可以创创建的。同同时,也应应当注意,ADO 当前并不支持 DAO 的所有功能。ADO 主要包括 RDO 风格的功能性,以便和 OLE DB 数据源交互,另外还包括远程和 DHTML 技术。 一般说来,在在 ADOO 的演化化过程中,马马上把大多多数 DAAO 应用用程序(eexceppt poossibbly是那那些使用 ODBCCDireect 的的应用程序序)移植到到 ADOO 上为时时太早,因因为当前的的 ADOO 并不支支持数据

12、定定义 (DDDL)、用户、组组等等。不不过,如果果只将 DDAO 用用于客户服务器应应用程序,并并不依赖于于 Jett 数据库库引擎或不不使用 DDDL,那那么就可能能移植到 ADO。最终,MMicroosoftt 将提供供一个 AADO DDDL 组组件来帮助助进行 DDAO 到到 ADOO 的移植植,并为 OLE DB 供供应商提供供一般的 DDL 支持。 在ASP中中使用ADDO技术来来访问Weeb数据库库,其应用用前景是无无可估量的的。原理图图如下: 图2 ADDO在ASSP程序中中的应用 2 Webb数据库管管理系统 常见的数据据库类型有有面向对象象的数据库库(OODDB)和关关系

13、型数据据库。OOODB对主主流数据库库应用开发发来说是相相当新颖的的,使用OOODB使使应用程序序中的数据据对象与现现实世界中中的对象一一一对应,面面向对象数数据库扩充充了对象模模型。一个个常用的对对象模型是是由对象数数据库管理理组(ODDMG)开开发出来,具具有比传统统的关系数数据库更优优越的性能能,但毕竟竟在目前还还是一种探探索阶段,暂暂时还未有有相应的技技术普及。 关系数据库库已经是数数据库体系系的世界标标准。当开开发一个数数据驱动应应用程序时时,大多数数情况下用用户需要访访问网络(如如Inteernett、Intrranett等)上的的数据信息息,就RCCDS就是是建立在网网络的信息息

14、通讯之上上,是完全全的客户机机/服务器应应用程序。 SQL SServeer是一个个可缩放、高性能的的关系型数数据库管理理系统(RRDBMSS),它的的设计是为为了满足分分布式客户户/服务器计计算的需要要,允许客客户应用程程序使用几几个特定的的工具和技技术控制从从服务器检检索的数据据。这些包包括触发器器、存储过过程和规则则的选项。因此,系系统采用MMS SQQL Seerverr7.0作作为后台数数据库。 3 Webb数据库结结构 数据模型通通常有层次次模型、网网状模型、关系模型型及OO(面向向对象)模模型等。其其中关系模模型是建立立在数学概概念基础之之上的一种种模型,由由若干个关关系框架组组

15、成的集合合,它也是到到目前为止止最为成熟熟的一种数数据库类型型。本文RRCDS采采用MS SQL Servver作为为后台数据据库,根据据数据库工工具和数据据库特点,开开发出一套套可靠健壮壮的数据存存储方案。 整个数据库库共有AddminDData、ChattNamees、DesiignUnnits、Messsage、OnliineUnnits、Prodductss、RqtTTaskss、RqtTTaskUUnitss、RqtDDesiggnUniits、SharreDatta、Taskks、TaskkUnitts和UplooadFiiles等等表格。在在建立数据据模型的时时候首先考考虑是要避

16、避免重复数数据,也就就是建立规规范化数据据库。规范范化数据库库可以通过过被称为范范式水平的的指标来衡衡量,级别别有第一范范式、第二二范式和第第三范式,通通常第三范范式就是要要达到的目目标,因为为它提供了了数据冗余余和开发简简易性之间间的最好折折衷。 RCDS数数据库正是是按照第三三范式标准准来设计的的,它保证证了模型的的精简和表表格的紧凑凑性。而第第三范式标标准也最大大发挥了关关系数据库库的优势,图图3是部分表表格的视图图链接情况况。 图3 关系系表格视图图 4.1 并并发控制的的处理 在多个用户户同时访问问一个数据据库时就产产生并发问问题,特别别是在其中中一些用户户对数据库库有添加或或删除修

17、改改等操作时时,那么其其他所获得得的数据可可能是一塌塌糊涂,甚甚至造成整整个数据访访问的冲突突、终止,从从而使系统统发生混乱乱以至崩溃溃。RCDDS采用的的解决办法法是锁定技技术,总体体上分为共共享锁定和和排它锁定定两种类型型(如图44)。前者者是指同时时有几个过过程共享一一个锁定,比比如一个用用户(或客客户)正在在读取一个个数据,虽虽然在这之之前他已经经对该数据据设置了锁锁(LOCCK),但但其他用户户同样可以以(也只能能是)读取取它。而排排他锁定一一般应用于于对数据进进行修改或或更新(包包括添加删删除等)操操作,即是是用户在修修改一个数数据之前设设置了锁定定,在一定定的时间里里其他用户户是

18、不能访访问到该数数据的,只只有等待锁锁定解除(UNLOCK)才能进行访问到它,当然在计算机处理的时候,其他的用户一般是感觉不到有这个等待时间的。通过这样的处理,就保证了数据的一致性。 a) 共享享锁定 b) 排它它锁定 图4 安全全锁定类型型在ADO进进行数据库库操作时,它它的锁定类类型相对来来说复杂一一些。打开开记录集时时,可以指指定锁定类类型。锁定定类型决定定了当不止止一个用户户同时试图图改变一个个记录时,数数据库应如如何处理。ADO中的的锁定主要要有以下四四种类型: l AdLLockRReadOOnly 指定你不不能修改记记录集中的的记录 l AdLLockPPessiimisttic

19、 指指定在编辑辑一个记录录时,立即即锁定它 l AdLLockOOptimmsticc 指定只只有调用记记录集的UUpdatte方法时时,才锁定定记录 l AdLLockBBatchhOptiimstiic 指定定记录只能能成批地更更新 在缺省情况况下,记录录集使用只只读锁定。要指定不不同的锁定定类型,可可以在打开开记录集时时包含这些些锁定常量量之一。部部分代码如如下: Set MMyConnn=Seever.CreaateObbjectt(“ADDODB.Connnectiion”) /定义数数据库连接接MyCoonn Set RRS=Seever.CreaateObbjectt(“ADDO

20、DB.RecoordSeet”) /定义返返回数据记记录集 MyConnn.Oppen “BykttDB.ddsn”/建立应应用程序与与数据源的的连接 RS.Oppen “SELEECT * FROOM Myytablle”, MyyConnn, addOpennDynaamic, adLoockPeessimmistiic /进行数数据库操作作,并且设设置锁定 RS.Cllose MyConnn.Cllose 4.2产品品数据一致致性处理 数据的安全全因素除了了前面所提提到的并行行控制之外外,还要考考虑事务处处理。网络络数据库有有其不同的的地方,例例如:假设设某个时间间有一个设设计人员在在你

21、的站点点上索取一一些设计信信息,有关关的设计信信息存储在在两个表中中。一个表表用来保存存该设计者者的信息,另另一个表包包含了要索索取的设计计信息。该该设计人员员的信息已已经输入了了第一个表表中。但是是,就在这这时,发生生了意外情情况,一道道闪电击中中了你的服服务器,使使第二个表表没有被更更新。在这这种情况下下,一个健健壮的系统统就必须保保证最后的的结果是两两个表都没没有被更新新过。这时时候事务处处理就发挥挥了重要的的功效。 使用事务处处理,你可可以防止第第二个表没没有被更新新而第一个个表被更新新的情况出出现:当一一组语句构构成一个事事务处理时时,如果一一个语句没没有执行成成功,则所所有的语句句都不成功功。不管是是针对多个个表,还是是进行表内内多个记录录的操作,它它们所需要要的安全保保证是一样样的。事务务处理的实实现代码如如下: Set MMyConnn=Seever.CreaateObbjectt(“ADDODB.Connnectiion”) MyConnn.Oppen “BykttDB.ddsn” MyConnn.BeeginT

温馨提示

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

评论

0/150

提交评论