文档库 最新最全的文档下载
当前位置:文档库 › 分布式数据库概述

分布式数据库概述

分布式数据库概述 

文章摘要:
本文简要介绍了分布式数据库的研究现状,并讨论了分布式数据库的体系结构以及数据分布的一些技术,最后探讨了分布式数据库的新发展。
关键字 分布式数据库 DDB DDBMS 数据分布 分割 分配



正文:

分布式数据库概述

数据库系统是针对文件系统缺乏共享和对数据的集中统一管理而提出的。数据库对数据的管理具有持久性,有效性,和共享性的特点,极大地减少了数据的冗余,消除了数据不一致的隐患,提高了存储和查询效率。数据库系统对分散在各处的应用数据相对地集中到一个数据库中,进行集中统一的管理。由于开始阶段没有注意到地域分散的特定需求,过分的集中又产生了不协调。随着数据库技术在各个领域中的应用不断发展,集中数据库渐渐显示出其不足之处,人们期望着符合现实需要的,能处理分散地域的,具备数据库管理特点的新的数据库系统出现。伴随着计算机网络的日趋成熟和分布式系统的不断完善,分布式数据库系统被提了出来。计算机网络虽然可以实现地域分散情况下的数据传输,以达到数据共享的目的,但它只是全文件的复制,缺乏对数据的管理。因此,人们设想以"数据库系统+计算机网络"来实现分布式数据库系统,既达到对数据的集中管理与共享,又能使地域的分散性被系统隐蔽起来。

分布式数据库的研究现状
我们虽然可以把分布式数据库系统看成是"数据库系统+计算机网络",但它决不是将数据库技术和计算机网络技术的简单结合,而是两种技术的互为渗透与融合。它要管理的不是单个数据库系统,而是分布在许多不同地域上的多个数据库系统。或许使用计算机网络也不仅仅是为了简单地传输文件,而是为了更能适应于一个特定企、事业高效地管理信息。
分布式数据库系统的研究起步较早,早在70年代中期,由美国计算机公司(CCA)在美国国防部委托下设计及实现的第一个分布式数据库原型系统SDD-1,该系统是1976~1978年进行设计,1979年在DEC-10和DEC-20计算机上实现的。它以ARPNET网络联接,以现有的Datacomputer 数据库管理系统为基础。国外DDBMS的代表作还有:
(1) R*,是IBM圣约瑟研究实验室研制的System R的分布式后继;
(2) 分布的INGRES,是美国加州大学伯克利分校研制的INGRES的分布式后继;
(3) POREL,由德国斯图加特大学E.J.Nuehold教授领导研制;
(4) SURIUS,由法国政府通过INRIA组织的DDBMS研究项目;
(5) DDM,也是美国计算机公司(CCA)设计及实现的DDBMS,

这是与Ada研究相关的项目,它支持嵌入到Ada中的Adaplex来作为DDB用户的接口。
我国对分布式数据库系统的研究始于80年代初,而且在短短的几年中做出了许多有益的成果,建立和实现了几个各具特色的分布式数据库原型,其中包括武汉大学数据库组研制的WDDBS,东北大学数据库组研制的DMU/FO系统,东南大学计算机系开发的SUNDDB系统,中国人民大学与知识工程研究所研制的DOS/SELS等,这些系统的研制对我国的分布式数据库技术的理论研究和开发应用起到了推动作用。
分布式数据库系统结构

图 1 分布式数据库系统体系结构
分布式数据库系统和数据库系统一样,它只是数据库系统的一种特殊形式。分布式数据库系统不仅仅包含分布式数据库管理系统和分布式数据库,还包含有更多的实际内容。它是可运行的且按分布式数据库方式存储和维护数据,并向应用的网络环境系统提供数据和信息的分布式系统。从图1 可见,分布式数据库系统由下述成分组成:
(1) 多台计算机设备,并由计算机网络连接。
(2) 计算机网络设备,网络通讯的一组软件。
(3) 分布式数据库管理系统,它包括GDBMS、LDBMS、CM,除了具有全局用户接口由GDBMS链接外,还可能具有自治场地用户接口,由场地DBMS链接,并持有独立的场地目录/辞典。
(4) 分布式数据库(DDB),包括全局数据库(GDB)和局部数据库(LDB)以及自治场地的自治场地数据库。
(5) 分布式数据库管理者(DDBA),它可分为二级,一级为全局数据库管理者(GDBA),另一级为局部或自治场地数据库管理者,统称为局部数据库管理者(LDBA)。
(6) 分布式数据库系统软件文档,这是一组与软件相匹配的软件文档及系统各种使用说明和文件。
分布式数据库(Distributed Data Base ,DDB)
分布式数据库是计算机网络环境中各场地(Site)或节点(Node)上数据库的逻辑集合。它是一组结构化的数据集合,逻辑上属于同一系统,而物理上分布在计算机网络的不同节点上,具有分布性和逻辑协调性的特点。
分布性是指数据不是存放在单一场地为单个计算机配置的存储设备上,而是按全局需要将数据划分成一定结构的数据子集,分散地存储在各个场地(节点)上。
逻辑协调性是指各场地上的数据子集,相互间由严密的约束规则加以限定,而在逻辑上是一个整体。
实际上,基于以上两特性的DDB,是虚拟的,逻辑的,即是由许多LDB逻辑组织而成的,它是针对于全体用户的,全局的数据库。
分布式数据库管理系统(Distributed Data Base Management System,DDBMS)

分布式数据库管理系统是用于

管理分布式数据库,同时使这种分布对用户透明的软件系统。一个分布式的数据库系统应满足以下四个假设条件:一是数据存储在一些场所中,每个场所逻辑上假定为单个处理器;二是场所中的处理器由计算机网络互联,松散互联的处理器有它们自己的操作系统,并可进行独立操作;三是分布式数据库不是一个能在每个网络节点上单独存储的文件的汇集,而是一个实实在在的数据库。四是系统具有DBMS 的完备功能,它不仅包括事务处理和分布式文件系统,还有查询处理和结构数据组织等功能。
数据分布
在构成分布式数据库系统的运行环境时,必须考虑构成分布式数据库系统所应用的各个组成部分各自如何使用数据的问题,所以,分布式数据库系统同样存在着分布式数据库DDB的设计问题,这就是数据分布。它包括了分布式数据库的逻辑划分和物理分配,以及用户对分布式数据库的划分或分配的感知程度(透明度)。
数据分布的主要目的是提高访问的局部性。即通过数据的合理分布,尽可能地使更多的数据能够就地存放,以减少远距离的数据访问,但在任何分布式数据库中,达到所有数据的访问都局部化是不可能的。即使多复本也只能达到读的完全局部化,对于数据的更新则需各个复本同步更新,因此仍然需要进行远程访问。一个成功的分布式数据库的设计应使访问的局部性能更好。数据的分布的目的是为了就地访问,而不是分布访问。
数据分布包括分割和分配两个方面,其可以描述为以下两个步骤:先从逻辑上将全局概念模式,即全局关系模式,划分成若干逻辑片断(子关系)--分割;再按一定的冗余度将片断分配到各个节点上,这时逻辑片断就成为具体的物理片断--分配。
对分布式数据库分割后,仍应保持DDB原有的特质,所以分割后的各逻辑关系之间应遵循下列原则:
(1) 完整性原则 全局关系的所有数据项必须包括在任何一个片断中。不允许出现某个数据项属于全局关系,但却不属于任何片断。
(2) 重构性原则 所有片断必须能重构(逆操作)成全局关系。
(3) 不相交原则 不相交原则不是必须的,但有这条原则可以使分割不致引起太复杂。分割时不相交,则分配时的冗余可以得到控制。
按上述原则,常用的分割方法有以下几种:
(1) 水平分割

定义:组合关系R(U,Q,S)上的水平分割(H)是一操作,它将R按照一组给定的谓词P1,……,Pn划分成一组关系模式R1(U1 Q1 S1),……,Rn(Un Qn Sn),满足:
1) U1=U2=…Un=U
2) K1=K2=…=Kn=K
3) Qi=Q∧Pi
4) Si=φ
其中,R是关系名;U是组成R的有限属性集;Q是关系所满足的限定条件

,是一谓词;S是关系的分布结构;K是主键;i,j∈{1,…,n}, Pi∧Pj=φ,∨Pi=TRUE,记为R(H)

={R1, …Rn}式中P={P1, …,Pn}。
由定义可以看出,水平分割实际上是关系的选择操作。
(2) 垂直分割

定义:组合关系R(U,Q,S)上的垂直分割(V)是一操作,它将R按照一组给定的属性A1, …,An划分成一组关系模式R1(U1 Q1 S1),……,Rn(Un Qn Sn),满足:
1) K1=K2=…=Kn=K
2) Ui=Ai
3) Qi=Q∧Pi
4) Si=φ
其中,i,j∈{1…n},Ai∈U,Ai∩Aj=K,∪ Ai=U,记为R(V)={R1, …,Rn}式中A={A1, …,An}。
由定义可以看出,垂直分割实际上是指对属性集上的投影操作。
(3) 混合分割
定义:组合关系R(U,Q,S)上的混合分割(M)是一操作,它将R按照一组给定的属性A1, …,An和一组谓词P1,……,Pn划分成R1(U1 Q1 S1),……,Rn(Un Qn Sn),满足:
1) K1=K2=…=Kn=K
2) Ui=Ai
3) Q1=Q2=…Qn=Q
4) πk1(R1)= …=πk2(R2) = …=∏kn(Rn)=∏k(R)
5) Si=φ
其中,i,j∈{1…n},Ai∈U, Ai∩Aj=K,∪ Ai=U,Pi∧Pj=φ,∨Pi=TRUE,记为R(V)={R1, …,Rn}式中AP={ |I=1,…,n}。
上述定义说明混合分割是水平分割和垂直分割的混合操作,即对关系的选择和投影视应用需要进行操作。
(4) 诱导分割
定义:组合关系R(U,Q,S)按另一个组合关系T,它是业一个已经水平分割成T1(U1,Q1,S1) , …,Tn(Un,Qn,Sn),在公共属性A上的诱导分割(DH)是一操作,它将R划分为R1(U1' Q1' S1'),……,Rn(Un' Qn' Sn'),满足:
1) K'1=K'2=…=K'n=K
2) U'1=U'2=…U'n=U
3) πA(Ri) ∈πA(Ti)
4) Q'i=Qi
5) S'i=φ
记R(DH)={R1, …,Rn}式中T={T1, …,Tn}.
诱导分割是一种相关分割操作,它是一种半联结操作。
分割后的工作便是分配,它的处理和加工不依赖分割。分配的目标是将已分割好的片断分配的不同的场地中去,使得某节点对某片断的访问尽量为本地访问,并且修改频率是可以接受的,从而获得最佳效益。分配的过程是线性的,亦即分割的输出是分配的输入。显然,分割与分配有着天然的联系,二者的区别仅在于分割着眼于全局,分配则考虑片断关系。数据分配一般有以下几种方式:
(1) 集中型
数据虽经划分,但所有逻辑片断完全集中在一个场地上,仍然像一个集中数据库一样。
(2) 分割型
数据被划分后,所有逻辑片断各自分配在一个场地上,所有场地上分配的只是全局关系的一个子关系。
(3) 混合型
数据被划分后的逻辑片断根据需要分配,共享的片断在需要共享的场地上重复设置,高度私用的片断只设置在所需要的场地上。
结束语
分布式数据库发展到今天,虽然有许多不完善的地方,但仍在许多场合得到了广泛的应用。由于新应用(如办公自动化系统、计算机集成制造系统)

的出现和计算机技术(如并行多处理机、超高速网络)的发展,促进了分布式数据库系统向更广阔的领域迈进。另外,面向对象技术研究地深入、人工智能、专家系统地进一步成熟,迫切需要数据库管理系统具有新的数据管理功能。因此,可以产生两个新的研究领域:分布式知识库系统和分布式面向对象数据库系统。这些研究将会在关系数据库已取得成功的基础上进一步深化和更加面向现实世界。
参考文献
(1)、郑振楣 于戈 郭敏 分布式数据库 科学出版社 2000年
(2)、刘威 分布式数据库及其技术 长春大学学报 2000年2月
(3)、徐泽同 《工程设计CAD及自动化》 1998年第4期












相关文档
相关文档 最新文档