欢迎投稿

今日深度:

分布式数据库的前世今生(1)

分布式数据库的前世今生(1)


20世纪70年代以来,由于计算机网络通信的发展,以及地理上分散的各种公司、团体和组织对数据库更为广泛应用的需求,在集中式数据库系统成熟技术的基础上产生和发展了分布式数据库系统。

分布式数据库系统是数据库技术和网络技术两者相互渗透和有机结合的成果,在数据库领域已形成一个分支。经过将近三十年的发展,分布式数据库已经发展的非常成熟,推出了很多实用化的系统。

世界上第一个分布式数据库系统SDD-1是由美国计算机公司CCA)于1979年在DEC计算机上实现。

20世纪90年代以来,分布式数据库系统进入商品化应用阶段,传统的关系数据库产品均发展成以计算机网络及多任务操作系统为核心的分布式数据库产品,同时分布式数据库逐步向客户机/服务器模式发展。

成熟的产品从早期原INGRES公司的INGRES/STAR,ORACLE公司的SQL*STAR到现在SYBASE公司的SQL REPLICATION SERVER等。

怎么样的一个数据库系统才能称得上是一个分布式系统?分布式系统有两个必须满足的特征:

1.分布性。数据库中的数据不是存储在同一个场地,更确切的说,是数据不是存储在同一台服务器的存储设备上,或者说,是存储在多个独立的数据库服务器中。

2.逻辑整体性。分布式数据库系统中的数据是相互联系的,逻辑上是一个统一的整体,也就是从外界看来,就像是一个集中式数据库系统。

这也是分布式数据库系统区别于那些分散在计算机网络上的不同节点上的集中式数据库或者文件系统的区别。后者在逻辑上是没有内在的联系。

下面我们通过分析两个例子来描述分布式数据库和集中式数据库的区别。

图1:分布式数据库系统

在上图描述的系统中,有三台服务器,每台服务器有自己的数据库系统,三台服务器之间通过网络相连接。每台服务器都有各自的客户端,用户可以直接通过客户机来对本地数据库中的数据执行局部应用;也可以通过客户机对两个或者两个以上的节点中的数据库执行全局应用。

全局应用对用户来说是透明的,用户并不关注数据存储的位置,用户只需要根据需要发出查询的请求。

客户机屏蔽了数据库的这种分布性。在图中描述了三种查询操作,用户1执行的是查询操作1,如蓝色线条所示,只需要对服务器1的数据进行查询就可以获得结果;用户2执行的是查询操作2,如红色线条所示,不仅需要查询服务器2的数据,同时也需要通过网络对服务器3的数据进行查询;而用户3执行的查询操作3则需要对三个数据库进行访问。

图2:并行结构数据库示例

上图中的配置与图1的不同之处在于三个后台数据库通过网络连接,服务器执行数据库管理功能,只有一个前台的客户机面向用户,尽管这样的系统可以将数据分布在不同的场地,但是这样的系统不是分布式数据库系统。原因在于每个数据库系统并不是一个单独的系统,不能执行局部的数据应用。

所以,分布式数据库的这种分布性不仅仅是要求物理上的分布,而且这种分布应该是面向应用的。

分布式数据库系统是在集中式数据库系统的基础上发展起来的,但是分布式数据库系统并不是简单的将集中数据库分散到不同的场地,它的实现具有自己的特征。

在实现数据库的独立性、数据共享、数据冗余、并发控制、完整性、安全性、事务处理等方面具有更加丰富的内容。我们可以总结出分布式数据库具有以下特点:

◆数据的物理分布性与逻辑整体性

数据的物理分布性是分布式数据库系统区别于集中式数据库系统的显著特征。数据的逻辑整体性是分布式数据库系统与分散式数据库系统的最大区别。

这种逻辑整体性也可以称之为数据的分布透明性。也就是用户不必关心数据的逻辑分片,不必关心数据物理位置的分布细节,同时也不必关心数据的冗余处理、不必关心具体某个场地的数据库类型。在用户看来,所有的这些不同的数据库都是一个完整的整体。


www.htsjk.Com true http://www.htsjk.com/shujukugl/18239.html NewsArticle 分布式数据库的前世今生(1) 20世纪70年代以来,由于计算机网络通信的发展,以及地理上分散的各种公司、团体和组织对数据库更为广泛应用的需求,在集中式数据库系统成熟技术的基...
评论暂时关闭