首页 理论教育多数据库系统的体系结构:分布式数据库技术

多数据库系统的体系结构:分布式数据库技术

【摘要】:图12.1带全局概念模式的MDBS的体系结构图12.1中,LIS表示本地内部模式,LCS表示本地概念模式,LES表示本地外部模式,GES表示全局外部模式,GCS表示全局概念模式。图12.2不带全局概念模式的MDBS的体系结构相对应的是多语言系统,这种系统允许用户使用本地数据库管理系统的语言存取全局数据库。图12.2所示的是不带全局概念模式的MDBS的体系结构。图12.3MDBS的基本组成

从自主性上看,分布式多数据库系统和分布式数据库系统的区别反映在它们的体系结构上。它们的基本区别在于全局模式的定义。在逻辑集成的分布式数据库系统中,全局概念模式定义了整个数据库的概念视图。而在分布式多数据库管理系统中,只表示每个本地DBMS希望共享的本地数据库的一个集群。所以说,一个多数据库管理系统(MDBMS)和分布式DBMS的全局数据库的定义是不同的。对于后者,全局数据库是本地数据库的一个并集,而对于前者,它只是同一个并集的子集。

图12.1所示的为带全局概念模式(global conceptual model,GCS)的MDBS的体系结构。

图12.1 带全局概念模式的MDBS的体系结构

图12.1中,LIS表示本地内部模式,LCS表示本地概念模式,LES表示本地外部模式,GES表示全局外部模式,GCS表示全局概念模式。

在多数据库系统中,GCS是通过集成本地自主数据库的外部模式或者本地概念模式的成分来定义的。进一步说,本地DBMS的用户在本地数据库上定义自己的视图,如果用户不想存取其他数据库的数据,则无需改变自己的应用。这也是一种自主性。

在多数据库系统中,设计一种全局概念模式涉及本地概念模式的集成,或者涉及本地外部模式的集成。MDBMS中的GCS的设计与逻辑集成化的分布式DBMS的区别是,前者中的映射是从本地概念模式到全局模式,而后者中的映射是反方向的。

设计了GCS以后,全局模式上的视图可以按照需要全局存取用户的要求来定义。这里不必强求GES和GCS使用相同的数据模型与语言来定义。

如果本地系统存在异构,则存在两种不同的实现:单语言实现和多语言实现。单语言(unilingual)的MDBMS要求用户在同时访问本地和全局数据库时,使用可能不同的数据模型和语言。单语言的MDBMS的标识性特征是,任何从多个数据库存取数据的应用都必须按全局概念模式定义的外部视图方式来处理。这意味着全局数据库的用户实际上在访问本地数据库,是扮演着另外一个用户的角色,使用另外一个数据模型和另外一种语言。这样一个应用可以有定义在本地概念模式上的本地外部模式(LES)及全局外部模式(GES)。不同的外部视图定义可以使用不同的存取语言。图12.1是一个单语言数据库系统的逻辑模型,其中把本地概念模式集成在全局概念模式里了。

(www.chuimin.cn)

图12.2 不带全局概念模式的MDBS的体系结构

相对应的是多语言系统,这种系统允许用户使用本地数据库管理系统的语言存取全局数据库(即访问其他数据库的数据)。在单语言系统和多语言系统中,GCS的定义是相似的,区别只是在于外部模式的定义。从使用角度看,多语言系统要比单语言系统方便。但是系统要复杂,原因是必须处理运行时的翻译。如果考虑各数据库管理系统(如Oracle、MS SQL Server、DB2等)在SQL标准语言上所做的不同扩展,尽管参与的数据库管理系统都使用SQL语言,实际上各系统使用的是不同的“方言”,因此也可看成是多语言系统。

图12.2所示的是不带全局概念模式的MDBS的体系结构。

注意,图12.2中,外部模式是在本地概念模式或多概念模式上集成的。这样对多数据库(可能是异构的)提供的存取需要外部模式到本地概念模式的映射。通常说的联邦数据库不需要全局概念模式。这种形态实际上是在外部层次上集成,由于不涉及内部,所以应用比较广泛。

MDBMS和一般的分布式数据库管理系统有很大的区别。主要区别在于,MDBMS由多个全功能的DBMS构成,每个DBMS管理不同的数据库。MDBMS通过顶上一层软件把各个DBMS集成起来。

MDBS的基本组成如图12.3所示。

图12.3 MDBS的基本组成