并行数据库系统(数据库)
时间:2022-12-13 00:30:01 | 来源:信息时代
时间:2022-12-13 00:30:01 来源:信息时代
并行数据库系统 : 并行数据库系统是在大规模并行计算机或机群并行计算环境的基础上建立的数据库系统。并行数据库系统的内容主要包括:
1.关系查询的并行性
实际上,关系查询特别适合于并行处理。由于关系代数的封闭性和数据操作的相对独立性,关系查询具有三种固有并行性: 数据操作间的流水线并行性(pipelining parallelism)、数据操作间的独立并行性(inter-operator parallelism)及单数据操作内的并行性(intra-operator parallelism)。
2.并行计算结构(硬件)
并行数据库系统一直以如下三种并行计算结构为基础来进行研究:
(1)共享主存储器(shared memory,SM)结构:简称SM并行结构,由多个处理机、一个共享主存储器和多个磁盘存储器构成。多处理机和共享主存储器由高速通信网络连接,每个处理机可直接存取一个或多个磁盘存储器。SM并行计算机结构如图1所示。IBM/370多处理机系统、VAX多处理机系统和SEQUENT系统是具有SM结构的典型并行计算机系统。
图1 SM结构并行计算机
(2)共享磁盘(shared disk,SD)结构: 简称SD结构,由多个具有独立主存储器的处理机和多个磁盘存储器构成。每个处理机都可以读写任何磁盘存储器。多个处理机和磁盘存储器由高速通信网络连接。SD结构并行计算机如图2所示。IBM的SYSPLEX系统就是一个基于SD结构的并行计算机系统。
图2 SD结构并行计算机
(3)无共享资源(shared nothing)结构:简称并行SN结构,由多个处理结点构成。每个处理结点具有自己独立的处理机、主存储器和磁盘存储器。多个处理机结点由高速通信网络连接。SN结构并行计算机如图3所示。具有SN结构的并行计算机系统包括NCUB系统、TERADATA系统、TANDEM系统和较新的VAXcluster系统等。
图3 SN结构并行计算机
上述三种并行结构是逻辑并行计算机结构,与通常物理并行计算机的分类有所不同。机群并行计算环境就是一个典型的SN结构并行计算环境。SM结构的可扩展性不好,而且能够支持的并行处理机个数不能太多。所以,SM结构不是一个很好的并行结构。1986年,Stonebraker提出SN结构是支持并行数据库系统的最好并行结构。这个观点已经得到了普遍的接受。
3.并行数据库系统软件
并行数据库系统软件由以下四层软件组成:
(1)用户界面层: 主要用来接受用户查询要求,进行语法检查等预处理,把满足查询语言语法要求的查询传送给并行查询处理层,最后把并行查询处理层返回的查询结果显示、打印输出或传输给应用程序。
(2)并行查询处理层: 由查询编译程序、并行查询优化程序和查询调度执行程序组成。
(3)并行关系代数层:由实现所有关系代数操作的并行算法组成。为便于产生优化的并行查询执行计划,通常把关系代数操作划分为更基本的操作。这样,在并行关系代数层可能包括实现这些细致操作的并行算法。并行关系代数层是供并行查询处理层调用的并行算法集合。
(4)并行记录管理层: 包括并发控制程序、系统恢复程序、内存缓冲管理程序、记录存储管理程序、存取方法处理程序和数据存取程序等。在这一层中,除了记录存储管理程序以外,其他程序的功能都与传统数据库管理系统的相应程序相同。记录管理程序实现数据库中数据在多处理机或多磁盘间的分布。数据在多磁盘或多处理机之间分布的目的是提高系统的I/O并行性。其他程序的功能虽然与传统数据库系统相应程序的功能相同,但实现的方法是很不相同的,都需要考虑并行环境下的新问题。例如,存取方法处理程序所支持的已经不再是简单的单处理机存取方法了,而是新的并行存取方法,如并行B-树、并行索引结构等。数据存取程序也需要根据数据在多磁盘或多处理机之间的分布方法重新设计。