首页 理论教育分布式数据库系统C-POREL的体系结构

分布式数据库系统C-POREL的体系结构

【摘要】:本节介绍分布式数据库管理系统C-POREL的体系结构。在秉承其先驱POREL的基础上,C-POREL根据系统体系结构的特点进行了适应性改进。POREL系统的设计目标可以简述如下。下面讨论POREL系统及其软件结构。首先对POREL的用户接口和逻辑结构进行介绍。POREL和C-POREL的逻辑结构可以用图2.15来表示。C-POREL实现的是关系水平分布。与所有的分布式数据库管理系统类似,整个系统的工作可以分为两个阶段:分析阶段和执行阶段。

本节介绍分布式数据库管理系统C-POREL的体系结构。

C-POREL是由中国科学院、华东师范大学和(原)上海科学技术大学于20世纪80年代联合开发的一个分布式关系型数据库管理系统。

在秉承其先驱POREL的基础上,C-POREL根据系统体系结构的特点进行了适应性改进。POREL是德国斯图加特大学20世纪70年代末至80年代初研制的、以Erich J.Neuhold教授为首的研究团队设计和研制的一个关系型分布式数据库管理系统,也是国际上首次研究、设计和开发的分布式数据库系统之一。笔者于1980年开始参加了该系统的研制,负责查询优化。当年参加该系统研制的人员很多,有的已成为欧美大学的著名教授,有的已成为分布式数据库技术的著名人物,如Prof.Dr.Erich J.Neuhold、Prof.Dr.Rudi Studer和Prof.Dr.B.Walter等。

POREL系统的设计目标可以简述如下。

●分布性:数据是分布的,且是水平分布的。

●非均质网:承载于计算机网络上的节点机可以是异质的,使用的操作系统可以各不相同。

●统一性:存放于计算机网络各节点上的数据由统一概念模式描述。

●不可见性:数据分布对用户来说是不可见的。

●用户接口灵活性:系统提供不同的用户接口,如交互式的数据库语言接口RDBL、宿主语言调用RDBL和决策支持会话向导系统。

●机器接口可移植性。

●故障局部化。

当时,POREL的基础环境如下。

●节点计算机的硬件需有128 KB的内存、两台磁盘机、一台磁带机、一个终端、一台输入/输出设备和一台数据通信设备。

●节点计算机的软件需具有多用户和交互式会话功能、进程通信功能、文件上分块直接存取功能,并配有PASCAL编译程序

POREL实验系统的硬件环境如图2.13所示,其中的节点计算机是DEC公司的PDP/11和Kienzle设备有限公司的机器,内存都为128 KB。在实验系统中,主要的操作系统是UNIX。

(www.chuimin.cn)

图2.13 POREL实验系统的硬件环境

由图2.13可知,实验系统主要由三个节点构成,这三个节点分布于德国的斯图加特大学、德国的卡斯鲁厄卡大学和Kienzle设备有限公司。

虽然实验系统只有三个节点,但已经能够说明问题。

下面讨论POREL系统及其软件结构。

首先对POREL的用户接口和逻辑结构进行介绍。我们可以用图2.14来说明POREL的用户接口与逻辑结构。

由图2.14可知,用户有三个接口与数据库打交道,三个接口为基于关系演算的数据库语言RDBL(与后来面世的SQL语言类似)、作为宿主语言的FORTRAN(后来主要为PASCAL)+作为嵌套对象的数据库语言RDBL、决策支持会话向导系统。

POREL和C-POREL的逻辑结构可以用图2.15来表示。

图2.14 POREL的用户接口与逻辑结构

图2.15 POREL和C-POREL的逻辑结构

C-POREL是在POREL的基础上,在我国由学术界演绎得更为先进的版本,其基本架构和POREL的类似。所以下面提及的软件模块往往会采用与POREL相似的名称。C-POREL实现的是关系水平分布。

与所有的分布式数据库管理系统类似,整个系统的工作可以分为两个阶段:分析阶段和执行阶段。在分析阶段,系统依赖于面向数据库的元数据(数据目录)开展工作;而在执行阶段,系统就会真正访问数据库中的数据。

在C-POREL中,分析阶段包含的软件模块有用户服务级子系统、离网分析(NUA)、涉网分析(NOA)等。在C-POREL里,执行阶段包含的主要软件模块有运行检验、执行监督程序、关系基本机器、封锁处理程序与目录管理程序等。

通信系统则负责这些模块之间的通信和与其他节点间的通信。其中的目录管理程序几乎在为所有的软件模块提供服务。细节可参见参考文献[5]。