注册 登录
互动中国 返回首页

blog_hutao的个人空间 http://blog.china.com.cn/?1236071 [收藏] [复制] [分享] [RSS]

日志

原创:并行数据库系统简介

已有 382 次阅读2017-3-20 21:18 |个人分类:云计算(1)|系统分类:经济·科学| 并行, 数据库, 系统, 简介

并行数据库系统简介

Yuanzi16

 

本文作者的话

本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢!

以下是正文

 

一、概述

并行数据库系统(Parallel Database System)是新一代高性能的数据库系统,是在MPP和集群并行计算环境的基础上建立的数据库系统。

并行数据库技术起源于20世纪70年代的数据库机(Database Machine)研究。其研究内容主要集中在关系代数操作的并行化和实现关系操作的专用硬件设计上;希望通过硬件实现关系数据库操作的某些功能,该研究以失败而告终。20世纪80年代后期,并行数据库技术的研究方向逐步转到了通用并行机方面。其研究的重点是并行数据库的物理组织、操作算法、优化和调度策略。从20世纪90年代至今,随着处理器、存储、网络等相关基础技术的发展,并行数据库技术的研究上升到一个新的水平;研究的重点也转移到数据操作的时间并行性和空间并行性上。

 

链接:MPP

MPPMassively Parallel Processing,或Massive Parallel Processor,大规模并行处理)系统,是由许多松耦合处理单元组成的。要注意的是,这里所指的是处理单元而不是处理器。在每个处理单元内的CPU都有自己私有的资源,如总线、内存、硬盘等。在每个处理单元内都有操作系统和管理数据库的实例复本。这种结构最大的特点在于不共享资源,适合多指令流、多数据流处理。

在计算机体系结构中,MPP20世纪90年代盛行。如今,世界上排名靠前的大型处理机,都是MPP

 

二、性能目标

并行数据库系统的目标是高性能(High Performance)和高可用性(High Availability);通过多个处理节点并行执行数据库任务,提高整个数据库系统的性能和可用性。

1、性能指标

性能指标关注的是并行数据库系统的处理能力;其具体表现可以统一总结为:数据库系统处理事务的响应时间。

并行数据库系统的高性能,可以从两个方面理解:一个是速度提升(Speed Up);一个是范围提升(Scale Up)。

速度提升,是指通过并行处理,可以使用更少的时间完成一样多的数据库事务。

范围提升,是指通过并行处理,在相同的处理时间内,可以完成更多的数据库事务。

并行数据库系统基于多处理节点的物理结构,将数据库管理技术与并行处理技术有机结合,来实现系统的高性能。

2、可用性指标

可用性指标关注的是并行数据库系统的健壮性,也就是当并行处理节点中的一个节点或多个节点部分失效或完全失效时,整个系统对外持续响应的能力。

高可用性可以同时在硬件和软件两个方面提供保障。

在硬件方面,通过冗余的处理节点、存储设备、网络链路等硬件措施,可以保证当系统中某节点部分或完全失效时,其它的硬件设备可以接手其处理,对外提供持续服务。

在软件方面,通过状态监控与跟踪、互相备份、日志等技术手段,可以保证当前系统中某节点部分或完全失效时,由它所进行的处理或由它所掌控的资源可以无损失或基本无损失地转移到其它节点,并由其它节点继续对外提供服务。

3、可扩充性

为了实现和保证高性能和高可用性,可扩充性也成为并行数据库系统的一个重要指标。可扩充性,是指并行数据库系统通过增加处理节点或者硬件资源(处理器、内存等),使其可以平滑地或线性地扩展其整体处理能力的特性。

三、主要问题

随着对并行计算技术研究的深入和SMPMPP等处理机技术的发展,并行数据库的研究也进入了一个新的领域,集群已经成为并行数据库系统中最受关注的热点。目前,并行数据库领域主要还有下列问题需要进一步研究和解决。

链接:SMP

SMPSymmetrical Multi-Processing,对称多处理机),是指在一台计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,一台电脑不再由单个CPU组成,而同时由多个处理器运行操作系统的单一复本,并共享内存和一台计算机的其他资源。虽然同时使用多个CPU,但是从管理的角度来看,它们的表现就像一台单机一样。系统将任务队列对称地分布于多个CPU之上,从而极大地提高了整个系统的数据处理能力。所有的处理器都可以平等地访问内存、I/O和外部中断。在对称多处理系统中,系统资源被系统中所有CPU共享,工作负载能够均匀地分配到所有可用处理器之上。从而,提高整个系统的数据处理能力。

1并行体系结构及其应用

这是并行数据库系统的基础问题。为了达到并行处理的目的,参与并行处理的各个处理节点之间是否要共享资源、共享哪些资源、需要多大程度的共享。这些就需要研究并行处理的体系结构及有关实现技术。

2、并行数据库的物理设计

主要是在并行处理的环境下,数据分布的算法研究、数据库设计工具与管理工具的研究。

3、处理节点间通讯机制研究

为了实现并行数据库的高性能,并行处理节点要最大程度地协同处理数据库事务。因此,节点间必不可少地存在通讯问题。如何支持大量节点之间消息和数据的高效通讯,也就成为了并行数据库系统中一个重要的研究课题。

4、并行操作算法

为提高并行处理的效率,需要在数据分布算法研究的基础上,深入研究联接、聚集、统计、排序等具体的数据操作在多节点上的并行操作算法。

5、并行操作的优化和同步

为获得高性能,如何将一个数据库处理事务合理地分解成相对独立的并行操作步骤、如何将这些步骤以最优的方式在多个处理节点间进行分配、如何在多个处理节点的同一个步骤和不同步骤之间进行消息和数据的同步。这些问题都值得深入研究。

6、并行数据库中数据的加载和再组织技术

为了保证高性能和高可用性,并行数据库系统中的处理节点可能需要进行扩充(或者调整)。这就需要考虑如何对原有数据进行卸载、加载,以及如何合理地在各个节点重新组织数据。

 

 

                201719日编写于重庆

                2017319日修改于重庆


鲜花

握手

路过

雷人

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦卡

您需要登录后才可以评论 登录 | 注册

和平论坛|专家博客|小黑屋|帮助|中国网互动中心 ( 京ICP证040089号 网络传播视听节目许可证号:0105123 邮编:100089 | 传真:010-88828190、88828200 )  

GMT+8, 2017-4-28 14:30

返回顶部