什么是并行数据库?

什么是并行数据库?,第1张

并行数据库系统(Parallel Database System)是新一代高性能的数据库系统,是在MPP和集群并行计算环境的基础上建立的数据库系统。 并行数据库技术起源于20世纪70年代的数据库机(Database Machine)研究,,研究的内容主要集中在关系代数 *** 作的并行化和实现关系 *** 作的专用硬件设计上,希望通过硬件实现关系数据库 *** 作的某些功能,该研究以失败而告终。80年代后期,并行数据库技术的研究方向逐步转到了通用并行机方面,研究的重点是并行数据库的物理组织、 *** 作算法、优化和调度策络。从90年代至今,随着处理器、存储、网络等相关基础技术的发展,并行数据库技术的研究上升到一个新的水平,研究的重点也转移到数据 *** 作的时间并行性和空间并行性上。 并行数据库系统的目标是高性能(High Performance)和高可用性(High Availability),通过多个处理节点并行执行数据库任务,提高整个数据库系统的性能和可用性。 性能指标关注的是并行数据库系统的处理能力,具体的表现可以统一总结为数据库系统处理事务的响应时间。并行数据库系统的高性能可以从两个方面理解,一个是速度提升(SpeedUp),一个是范围提升(ScaleUp)。速度提升是指,通过并行处理,可以使用更少的时间完成两样多的数据库事务。范围提升是指,通过并行处理,在相同的处理时间内,可以完成更多的数据库事务。并行数据库系统基于多处理节点的物理结构,将数据库管理技术与并行处理技术有机结合,来实现系统的高性能。 可用性指标关注的是并行数据库系统的健壮性,也就是当并行处理节点中的一个节点或多个节点部分失效或完全失效时,整个系统对外持续响应的能力。高可用性可以同时在硬件和软件两个方面提供保障。在硬件方面,通过冗余的处理节点、存储设备、网络链路等硬件措施,可以保证当系统中某节点部分或完全失效时,其它的硬件设备可以接手其处理,对外提供持续服务。在软件方面,通过状态监控与跟踪、互相备份、日志等技术手段,可以保证当前系统中某节点部分或完全失效时,由它所进行的处理或由它所掌控的资源可以无损失或基本无损失地转移到其它节点,并由其它节点继续对外提供服务。 为了实现和保证高性能和高可用性,可扩充性也成为并行数据库系统的一个重要指标。可扩充性是指,并行数据库系统通过增加处理节点或者硬件资源(处理器、内存等),使其可以平滑地或线性地扩展其整体处理能力的特性。 随着对并行计算技术研究的深入和SMP、MPP等处理机技术的发展,并行数据库的研究也进入了一个新的领域,集群已经成为了并行数据库系统中最受关注的热点。目前,并行数据库领域主要还有下列问题需要进一步地研究和解决。 (1)并行体系结构及其应用,这是并行数据库系统的基础问题。为了达到并行处理的目的,参与并行处理的各个处理节点之间是否要共享资源、共享哪些资源、需要多大程度的共享,这些就需要研究并行处理的体系结构及有关实现技术。 (2)并行数据库的物理设计,主要是在并行处理的环境下,数据分布的算法的研究、数据库设计工具与管理工具的研究。 (3)处理节点间通讯机制的研究。为了实现并行数据库的高性能,并行处理节点要最大程度地协同处理数据库事务,因此,节点间必不可少地存在通讯问题,如何支持大量节点之间消息和数据的高效通讯,也成为了并行数据库系统中一个重要的研究课题。 (4)并行 *** 作算法,为提高并行处理的效率,需要在数据分布算法研究的基础上,深入研究联接、聚集、统计、排序等具体的数据 *** 作在多节点上的并行 *** 作算法。 (5)并行 *** 作的优化和同步,为获得高性能,如何将一个数据库处理事务合理地分解成相对独立的并行 *** 作步骤、如何将这些步骤以最优的方式在多个处理节点间进行分配、如何在多个处理节点的同一个步骤和不同步骤之间进行消息和数据的同步,这些问题都值得深入研究。 (6)并行数据库中数据的加载和再组织技术,为了保证高性能和高可用性,并行数据库系统中的处理节点可能需要进行扩充(或者调整),这就需要考虑如何对原有数据进行卸载、加载,以及如何合理地在各个节点是重新组织数据。

并行数据库系统是在并行机上运行的具有并行处理能力的数据库系统。并行数据库系统是数据库技术与并行计算技术相结合的产物。

并行计算技术利用多处理机并行处理产生的规模效益来提高系统的整体性能,为数据库系统提供了一个良好的硬件平台。研究和开发适应于并行计算机系统的并行数据库系统成为数据库学术界和工业界的研究热点,形成了并行处理技术与数据库技术相结合的并行数据库新技术。

并行处理技术与数据库技术的结合,具有潜在的可行性。因为关系数据库模型本身就有极大的并行可能性。关系数据模型中,数据库是无组的集合,数据库 *** 作实际是集合 *** 作,许多情况下可分解为一系列对子集的 *** 作,许多子 *** 作不具有数据相关性,因而具有潜在的并行性。

一个并行数据库系统应该实现如下目标:

1、高性能:并行数据库系统通过将数据库管理技术与并行处理技术有机结合,发挥多处理机结构的优势,从而提供比相应的大型机系统要高得多的性能价格比和可用性。

2、高可用性:并行数据库系统可通过数据复制来增强数据库的可用性。

3、可扩充性:数据库系统的可扩充性指系统通过增加处理和存储能力而平滑地扩展性能的能力。

从硬件结构来看,根据处理机与磁盘及内存的相互关系可以将并行计算机分为三种基本的体系结构,并行数据库系统研究一直以三种并行计算结构为基础:共享内存(主存储器)结构(Shared Memory,以下简称SM结构),共享磁盘结构(Share Disk,以下简称SD结构)和无共享资源结构(Shared Nothing,以下简称SN结构)。

SM并行结构由多个处理机、一个共享内存(主存储器)和多个磁盘存储器构成。多处理机和共享内存由高速通信网络连接,每个处理机可直接存取一个或多个磁盘,即所有内存与磁盘为所有处理机共享。SM方案的优势在于实现简单和负载均衡。

SD并行结构由多个具有独立内存(主存储器)的处理机和多个磁盘构成。每个处理机都可以读写任何磁盘。多个处理机和磁盘存储器由高速通信网络连接。SD方案具有成本低、可扩充性好、可用性强。容易从单处理机系统迁移以及负载均衡等优点。该结构的不足在于实现起来复杂以及存在潜在的性能问题。

SN并行结构由多个处理结点构成。每个处理结点具有自己独立的处理机、内存(主存储器)和磁盘存储器。多个处理机结点由高速通信网络连接。SN方案中,由于每一结点可视为分布式数据库系统中的局部场地(拥有自己的数据库软件),因此分布式数据库设计中的多数设计思路,如数据库分片、分布事务管理和分布查询处理等,都可以借鉴。SN结构成本较低,它最大限度地减少了共享资源,具有极佳的可伸缩性,结点数目可达数千个,并可获得接近线性的伸缩比。而通过在多个结点上复制数据又可实现高可用性。该方案的不足在于实现复杂以及结点负荷难以均衡。往往只是根据数据的物理位置而不是系统的实际负载来分配任务。并且,系统中新结点的加入将导致重新组织数据库以均衡负载。

下面列出对以上三种并行结构从性能、可用性和可扩充性等方面的比较。

并行数据库分为分布式并行数据库和集群式并行数据库,是在MPP和集群并行计算环境的基础上建立的数据库系统。

并行数据库系统(ParallelDatabaseSystem)是新一代高性能的数据库系统,并行数据库系统的目标是高性能(HighPerformance)和高可用性(HighAvailability),通过多个处理节点并行执行数据库任务,提高整个数据库系统的性能和可用性。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9647884.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存