摘 要:本文从现代数据库发展情况分析出发,阐述了分布式数据库的原理和体系结构,重点以SQL分布数据库工具为例从分布式数据库事务管理和并发控制、分布式数据库备份与恢复以及分布式数据库数据复制三个方面探讨分析了分布数据库系统构造的关键技术。
关键词:分布式;事物管理;数据复制
1.引言
随着目前网络数据库迅猛发展的形势,数据库的发展也和网络紧密结合起来了,应用最为广泛的是分布式大型数据库系统技术,这种分布式的数据库模型适合应用在目前的各个大型的工程软件中。分布式的数据库模型通过数据共享技术和分散事物处理技术将不同地方的数据库整合成为一个整体综合性数据库体系。因为,分布式数据库是一个体系结构,不仅仅是把多个单独的数据库组合,而是借助合适的系统构搭建一个逻辑上为一体协调一致的网络数据库,目前应用最为广泛的是用浏览器/服务器(B/S)系统架构来搭建分布数据库系统。
2.分布式数据库系统概述
分布式数据库经过设计上的统一后,把分散在网络中各个数据库在逻辑上连成一个整体,这种连成一体的数据库每个节点都具有单独数据处理能力,他执行局部的数据运算。并且,这些数据库运算的同时,被数据库体系整体配置,共同完成全局方面的运算。分布式数据库系统特点是分布性、逻辑协调性以及网络统一性。因此,从系统的整体性能来说,分布式数据库系统可以看做是体系中网络和数据库系统的应用的结合体。
目前,用于搭建分布式数据库系统的体系构架最为常用的是浏览器/服务器(B/S)系统架构。B/S模式主要由浏览器、Web服务器、数据库服务器三个层次组成,其本质上是一种特殊的客户/服务器结构,只不过它的客户端简化为单一HTML语言的客户软件,因而简化了客户端系统的管理和使用,可以使管理和维护集中在服务器端。在这种模式下,客户端使用一个通用的浏览器,代替形形色色的各种应用软件,用户的所有操作都是通过浏览器进行的。在B/S体系结构之中,纳入组件模型和分布式组件模型,把中间层划分为许多服务程序,将每个服务程序都视为独立的层,这样就形成了N层体系结构和Web分布式计算的概念。典型的N层结构就是基于Web的B/S结构,如下图1所示。
图1 B/S分布式数据库结构图
3.分布式数据库系统构建重点技术
(1)分布式数据库事务管理和并发控制
分布式数据库系统中的事务并发控制及系统资源的有效利用主要靠事物管理来完成,分布式事务管理程序能够保证多个事物并发协调准确地执行。分布数据库中的事物控制着系统对各种数据项的访问,一个事务通过分解成成多个子事务来访问多个站点的数据,每个子事务负责对一个数据存储站点进行访问。而分布式的各个站点的事物通常并发运行的。各局部站点上的事务以集中式数据库系统的可串行化理论为基础实现并发控制,即得到各站点上事务执行的局部顺序。在此基础上,只需从全局系统的角度出发,得到各个站点上事务执行的全局的顺序。由于分布式系统中不存在一个全局的时钟概念,因此一般以事件的时戳来表示事件的发生顺序,再构造出系统的全局逻辑时问顺序,以确定事务的唯一顺序。基本的并发控制的方法是封锁方法。封锁方法的基本思想是要求事务在对一数据项进行操作之前必须首先申请对该数据项的封锁(Clock),获准后方能进行操作。如果该数据项己被其它事务封锁且操作方式冲突,那么该事务处于等待状态,直到该数据对象被释放为止。在封锁机制中定义了两种方式:共享锁方式与互斥锁方式。分别对应于用户对数据项的读操作与写操作。以目前最为常用的SQL数据库管理工具为例,它使用锁对象来防止多用户在同一时间内对某一数据库进行修改,并能防止一名用户检索正在被另一名用户修改的数据,锁定有助于确保事务和数据保持逻辑上的一致。SQL Server的锁管理能自动获得和释放锁。
(2)分布式数据库备份与恢复
数据备份与恢复是实现信息安全运行的重要技术之一,能保证信息系统因各种原因遭到破坏时,能尽快投入使用。常用的分布式数据库SQL Server备份数据库有几种方法:完全备份、差异备份、事务日志备份、文件组和数据文件备份。完全备份包括备份数据库中的所有数据、文件组或数据文件。差异备份只备份上次备份后进行修改的数据。事务日志备份用于备份和删除事务日志(事务曰志数据与数据库备份协同工作)。文件组和数据文件备份用于数据库中备份特定文件组或数据文件。SQL Server可以使用EnterpriseManager或T-SQL命令等备份。在实际的分布式数据库系统中,可以采用手动备份和自动备份,一般采用手动备份和自动备份相结合的办法。在备份中,分热备份和冷备份。当数据库在使用时,对数据库备份成为热备份;当数据库完全关闭后备份成为冷备份。SQL Server数据库恢复分从完全备份中恢复、从差异备份中恢复及从事务日志备份中恢复。从完全备份中恢复过程很简单,只须用SQL Server EnterpriseManager或T-SQL就可以恢复备份文件。从差异备份中恢复,先从完全备份中还原,再还原自上次完全备份后创建的差异备份。从事务日志中恢复,要经过以下步骤:
①使用NO TRUNCATE选项备份当前活动的事务日志。
②还原最新完全备份。
③还原所有差异备份以将数据库返回到执行最近一次备份操作时的状态。
④还原上次差异备份后创建的所有事务日志备份,以重新显示上次备份后发生的所有事务。
⑤还原在第1步中创建的事务日志备份,以将数据库返回到故障前的状态。
(3)分布式数据库数据复制
数据复制是指在由两个或者多个数据库系统构成的一个分布式数据库环境中拷贝数据的过程。这个过程中,将分布式数据库中某个结点的数据拷贝到不同物理地点的数据库中,以支持分布式应用,它是整个分布式计算解决方案的一个重要组成部分。当然,在实际应用中,由于各个数据库副本可能对相同的数据对象进行操作,当进行数据同步时,就会产生冲突,主要有更新冲突、唯一性冲突、删除冲突等等。这些冲突会严重影响数据库数据的完整性。所以在复制过程中必须尽量防止数据冲突的产生,一旦发生冲突,就必须有预先设置好的冲突解决方法。分布式数据库工具SQL Server能在不同节点间复制数据并自动同步这些节点的数据,用户可以在同一服务的不同数据库或不同的远程连接服务器之间复制数据。在分布式数据库应用环境中,不同的应用领域对数据复制的要求各异,不可能有一种复制方法能够适合所有领域中的应用需要。为此,SOL Server提供了以下三种复制类型来满足不同环境中的应用需要:
①快照复制:快照复制是SQL Server中最简单的一种复制方式,它拷贝数据库中出版物在某一时刻的结构和数据状态,即建立出版物快照,之后通过复制代理将出版物快照复制给订阅服务器。快照复制操作由快照代理和分发代理实现。快照代理将出版物中各条目(表)的结构和数据拷贝到分发服务器的快照文件(但不是分发数据库)中,并在分发服务器的分发数据库中记录复制同步操作。分发服务器再根据分发数据库中的同步记录将快照文件传递到订阅服务器的目的数据库中。
②事务复制:采用事务复制方式时,当订阅服务器对出版服务器中的出版物做到初始同步后,SQL Server监视INSERT、UPDATE、DELETE等数据修改语句的执行,并对影响出版物的事务进行标识。事务日志阅读代理从事务日志中捕获出版条目中数据的变化,并将引起这些变化的事务拷贝到分发服务器的分发数据库中。之后,由分发服务器将这些事务传递给订阅服务器,并在订阅服务器上顺序执行这些事务,对复制数据做增量修改,从而保证订阅服务器中的复制数据与出版服务器出版物中的数据一致(但不是实时一致)。由于事务的数据量远小于它所操作数据库的数据量,所以采用事务复制方式能够有效减轻网络的通信负担。
③合并复制:合并复制允许用户修改订阅服务器中的订阅数据,它能够自动监视订阅数据库中的数据变化并定期将这些变化进行合并,再把合并后的结果提交给所有订阅者,如果在合并过程中发现不同用户对数据所做的修改存在冲突时,合并代理程序将根据建立订阅时为订阅者所设置的优先级裁决哪个用户的修改有效。
4.结束语
随着信息技术的飞速发展,在社会应用领域,对分布式数据库系统的需求更加迫切。许多关系着国民经济发展的行业,例如水利、电力、交通、金融等行业由于所管辖的部门或企业往往在地域上比较分散,而在行政和业务管理上,既要求各部门具有独立的局部控制、分散管理的能力,同时,又要在整个行业内实现对所有部门或所属企业进行全局控制,统一管理,分布式数据库系统给这些行业数据管理发展起到巨大的推动作用。
参考文献:
[1] 史斌. Oracle分布式数据库及其实现[J]. 电脑知识与技术, 2011, (26)
[2] 康婧. 基于RNN的数据分片技术的研究[J]. 数字技术与应用, 2011, (07)
[3] 陈晓明. 分布式数据库分片关系变换查询优化[J]. 电子设计工程, 2011, (08)
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回电子论文列表