当前位置:文档之家› 并行数据库系统

并行数据库系统

并行数据库系统
并行数据库系统

并行数据库系统

1并行数据库概述

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

1.1并行数据库系统的目标:

1.高性能。通过将数据库在多个磁盘上分布存储,利用多个处理机对磁盘数据进行并行处理,解决过开发查询间并行性、查询内

并行性以及操作内并行性,提高查询效率。

2.高可用性。可通过数据复制来增强数据库的可用性,当一个磁盘损坏时,该盘上的数据在其他磁盘上的副本仍可供使用。

3.可扩充性。系统通过增加处理和存储能力而平滑地扩展性能的能力。

线形伸缩比:是指任务扩大N倍、系统处理和存储能力也扩大N倍时系统性能不变,即: 小任务在小系统上的运行时间与大(N倍)任务在大系统上的运行时间之比为1。

线形加速度比:是指任务不变、系统处理和存储能力扩大N倍时系统性能也提高N倍,即: 小系统上执行一个任务的时间与大(

1.2支持并行数据库的并行结构

1.2.1 共享内存(SM )并行结构

图1.1 SM结构并行计算机(负荷比较均衡、成本高、可用性不是很好)I/O瓶颈问题。通

N倍)系统上执行同一个任务的时间之比为N。

图1.2 SD结构并行计算机(成本低、可扩充性好、可用性强。实现起来比复杂)1.2.2共享磁盘(SD)并行结构

1.2.3无共享资源(SN)并行结构

图1.3 SN结构并行计算机(成本低、可伸缩性与可用性高。实现复杂、节点负荷难均

衡)

3

表1.1三种并行结构比较

2并行数据库的并行查询处理技术

顺序执行计划:SP ( Sequential plan ) 并行执行计划:PP ( Parallel plan )

对于查询Q ,若某个并行执行计划PP 与Q 的一个顺序执行计划SP 对应于相同的操作树,则称

PP

为SP 的一个并行化方案,而由顺序执行计划 SP 得到的某个PP 的过程称为并行化。

例:求每个部门职工的平均工资,并按平均工资升序排列。

DEP T.DEPTNUM = EMP .DEPTNUM

1.2.4

种并行结构比较

SELECT DEPTNUM AVG (SAL ) AVGSAL FROM EMP GROU P BY DEPTNUM BY AVGSAL ;

ORDER

这里,分组和排序可以并行(流水线式)

2.1并行粒度

并行粒度指的是查询执行的并行程度,可分为四种:

(1) 事务间并行性。

是粒度最粗也是最容易实现的并行性。由于这种并行性允许多个进程或线索同时处理多个用户 (集中式数据库也这样做)

(2)

请求,因此可以显著增加系统吞吐量,支持更多的并发用户。

查询间并行性(也就是事务内并行性)

同一事务内的不同查询 如果是不相关的,它们并行执行必将提高效率, 但是,同一事务内的查 (3)

询如果是相关的,它们并行执行比较复杂,系统必须进行相关性控制。 操作间并

行性(也就是查询内并行性)

同一查询内的不同操作往往可以并行执行。考虑一条 SQL 查询语句可以分解成多个子操作, 有多个处理机执行。例如下列查询:

SELECT DEPTNUM , EMPNUM FROM

DEPT , EMP

WHERE

如果操作OP2直接依赖于OP1,并且OP2必须等待OP1处理完所有元组后方可开始执行,则称 以阻塞方式直接依赖于

OP1;如果OP2无需等待OP1执行完毕即可在另一处理机上开始执行,则称 以流水线方式直接依赖于OP1。垂直并行化则是指存

在流水线方式依赖关系的操作分别由不同处理机并行 执行的形式。

例如,

排序操作、 扫描操作由不同的处理机并行执行就是 水平并行化的实例。

例如: 例。

排序

排序

排序

OP2 OP2

扫描 扫描操作、 扫描 排序操作、 扫描……

连接操作、分组操作由不同的处理机并行执行就是

垂直并行优化 的实

GROU P BY DEP TNUM ORDER BY DEPTNUM ;

可以分解为扫描DEPT 表和EMP 表,对两表进行结合,对结合结果排序以及分组和输出五个子任务。

前一操作的输出即是下一操作的输入。如果后一操作等待前一操作产生 一定量的输出后(而不必等待前一

操作执行完毕)即可在另一处理机上开始执行,这种并行方式称为

垂直并行或流水线并行。

(4)

操作内(intra-0peration )并行性

操作内并行性的粒度最细,它将同一操作(如扫描操作、合并操作、排序操作等) 子操作,由不同的处理机同时执行。

并行粒度

(b )垂直并行化

图2. 2.

并行化的两种形式

如果两个操作OP 1、OP 2无相互依赖关系,则称这两个操作相互独立。水平并行化指的是互相独立的 多个操作或者一个操作内互相独立

的多个子操作分别由 不同的处理机并行执行的形式。

分解成多个独立的

事务(Transation)

查询(Query ) 操作(Op eration)

事务内

事务间

查询内

查询间

操作内

操作间

图2.1 四种并行粒度

2.1.1 并行化形式

水平并行化(独立并行化,

Inde pendent P arallelism )和垂直并行 化(流水线并行化, Pip elining

P arallelism ) OP 1

0P 1 0P2

(a )水平并行化

5

S i

S i

R i

S 2

R 2

—1 ----

S 3

R 3

S P

R p

----

—1 ----

扫描

排序

J

连接

分组

由于关系代数的封闭性和数据操作的相对独立性,关系查询具有三种固有并行性,即

操作间的流水

线并行性、操作间的独立并行性 以及操作内的独立并行性,这为关系代数的并行化提供了现实基础。

2.1.2 并行操作算法

并行数据库操作算法的研究已经成为并行数据库系统近几年一个非常活跃的研究领域。并行操作算 法有并行结合算法、并行扫描算

法、并行排序算法 等。

由于结合操作是关系数据库系统中最耗时且最常用的操作,对并行结合操作的研究最多。提出了基

于嵌套循环的并行结合算法、基于合并扫描的并行结合算法 、基于HASH 的并行结合算法、基于索引的并 行结合算法等。

基于嵌套循环的并行结合算法

(S>>R )

输入:R , S :待结合的两个关系;

A :连接属性;P :处理机数

输出:关系R 和S 的结合结果(结合属性为 A )

方法:(1 )把S 均匀地分布到P 个处理机,设S i 是S 在结点i 上的子集合;

(2) FOR I = 1 TO p DO (并行地)

处理机i 按照结合属性值排序S

END DO ;

(3)在R 所在的处理机上,对 R 按结合的属性排序,再以流水线方式向P 个处理机广播R 的元组; (4) FOR i = 1 TO p DO (流水线方式并行的)

处理机i 以流水线方式接收R 的元组; 对磁盘上的S 中元组和 内存中R 的元组结合、

ENDFOR ;

该算法适合于S 的元组数远远大于 R 的元组数(R 元组数较少)

输出;

S 2

S 3

S p

图 2.3 R 与 S 基于嵌套循环的并行结合示意图 二、基于排序的并行结合算法

基于排序的并行结合算法由两个阶段组成:

排序阶段 和结合阶段 。在排序阶段,它按照结合属性的值 排序

每个结合关系;在 结合阶段,完成两个排序关系的结合。

输入:R ,S :待结合的两个关系。

A :连接属性 P :处理机数 H :HASH 函数

输出:关系 R 和 S 的结合结果(结合属性为 A ) 方法:

(1) 使用HASH 函数在P 个处理结点间分布 R 和S 的元组,设S i 和R i 是S 和R 在结点i 上的子集: (2)FOR i = 1

处理机

ENDFOR ; 3) i = 1 TO

结点 i

完成 R i 和 S i 的结合 输出 R 和 S 的结合结果

( 4 ) 输出

算法中的M 应该充分

大,以减少R 的子集合对应的HASH 表超过可用内存容量的概率。 实验表明, 使用并行数据操作算法实现查询的并行处理可以充分地发挥多处理机的并行性, 善关系运算的效率,提高查询处理的速度。

图 2.4 一次哈希与排序并行结合图

TO p DO (水平并行地), i 排序 R i 和 S i

p DO (水平并行地) ,

ENDFOR ;

理论和实验结果表明,当两个结合关系的元组数相差较小时,该算法的效率高于前

一个算法。 基于 二次 HASH 的并行连接算法

通过一个定义在结合连接属性上的

并行地完成结合操作。

输入:关系 R 和 S : HASH 函数 H 1 和 输出:关系 R 和 S 的连接结果。

使用 H 1 把 R 划分为

1)

2)

3)

HASH 函数把两个结合关系分解为 P 个子集合, 然后使用 P 个处理机

H 2,结点数P ,子集合数M 。

M 个子集合, HASH 值为 i 的元组送入子集合

M 个子集合, HASH 值为 i 的元组送入子结合

DO (并行地) 使用H 2把R i 分布到P 个处理结点,在每个结点的内存中 使用H 2以

流水线方式向P 个处理结点发送S i 的元组;

建立 R i ,并存储到所有可 Si ,并存储到所有可

R i 元组的HASH 表;

FOR J = 1 TO p DO (并行地)

结点j 用收到的S 的元组匹配R 的HASH 表,进行S i 和R i 的结合; R 和S 的结合结

果。

从而改

7

并行数据库查询优化问题与顺序数据库查询问题有所不同。

在顺序数据库系统中,给定一个查询Q ,查

询优化算法只需找到Q 的一个具有最小工作量的执行计划。

Q 的最小工作量的执行计划可能具有很强的固有顺

序性,难以并行化,因而不具有最小响应时间,在并行数据库系统中,查询优化的目标是寻找

Q 的具有最小响

应时间的执行计划,执行计划的工作量不是第一重要的。于是,在并行数据库系统中,需要新的查询处理算法 和新的查询优化技术。

并行查询优化面临的两大困难:

(1) 执行计划搜索空间的庞大。

设SPLAN ( Q )是查询Q 的顺序执行计划空间,P 是一个顺序执行计划,PARALLEL ( P )是该计划的 所有并行化方案,那么查询 Q 的并行执行计划空间 PARALLEL ( P

)则可以由下述公式来表示:

R

m

S

m

P p

P l P p

R i R

11

R

12

…R

1p

R 2

R

21 R

22

…R 2p

1 1

R i R i1 R i2 …R ip 1 1

R

m

R

m1

R

m2

…R mp

S i S 11

S

12

…S ip S 2

S

21 S

22

…S 2p

1 1

S

S il S i2 …S ip

1 1

S

m

S

m1

S

m2

…S

mp

2.1.3

并行查询优化

R i R 2 R 3

S i S 2 S 3

P l P 2 P 3

P 2 P 3

在站点P1,对R 的每一个 子集R 均有一个键值表值。

M 足够大,以保证每条链不太长。

并行数据库系统

并行数据库系统

并行数据库系统 1 并行数据库概述 并行数据库系统是在并行机上运行的具有并行处理能力的数据库系统,是数据库技术与并行计算技术结合的产物。 1.1 并行数据库系统的目标: 1.高性能。通过将数据库在多个磁盘上分布存储,利用多个处理机对磁盘数据进行并行处理,解决I/O 瓶颈问题。通过开发查询间并行性、查询内并行性以及操作内并行性,提高查询效率。 2.高可用性。可通过数据复制来增强数据库的可用性,当一个磁盘损坏时,该盘上的数据在其他磁盘上的副本仍可供使用。 3.可扩充性。系统通过增加处理和存储能力而平滑地扩展性能的能力。 ● 线形伸缩比:是指任务扩大N 倍、系统处理和存储能力也扩大N 倍时系统性能不变,即: 小任务在小系统上的运行时间与大(N 倍)任务在大系统上的运行时间之比为1。 ● 线形加速度比:是指任务不变、系统处理和存储能力扩大N 倍时系统性能也提高N 倍,即: 小系统上执行一个任务的时间与大(N 倍)系统上执行同一个任务的时间之比为N 。 1.2 支持并行数据库的并行结构 1.2.1 共享内存(SM )并行结构 … …

… 图1.1 SM 结构并行计算机(负荷比较均衡、成本高、可用性不是很好) 1.2.2 共享磁盘(SD )并行结构 …

… 图1.2 SD 结构并行计算机(成本低、可扩充性好、可用性强。实现起来比复杂) 1.2.3 无共享资源(SN )并行结构 …

… … 图1.3 SN 结构并行计算机(成本低、可伸缩性与可用性高。实现复杂、节点负荷难均衡) 1.2.4 三种并行结构比较 表1.1 三种并行结构比较

数据库并发控制

数据库是一个共享资源,可以提供多个用户使用。这些用户程序可以一个一个地串行执行,每个时刻只有一个用户程序运行,执行对数据库的存取,其他用户程序必须等到这个用户程序结束以后方能对数据库存取。但是如果一个用户程序涉及大量数据的输入/输出交换,则数据库系统的大部分时间处于闲置状态。因此,为了充分利用数据库资源,发挥数据库共享资源的特点,应该允许多个用户并行地存取数据库。但这样就会产生多个用户程序并发存取同一数据的情况,若对并发操作不加控制就可能会存取和存储不正确的数据,破坏数据库的一致性,所以数据库管理系统必须提供并发控制机制。并发控制机制的好坏是衡量一个数据库管理系统性能的重要标志之一。 DM用封锁机制来解决并发问题。它可以保证任何时候都可以有多个正在运行的用户程序,但是所有用户程序都在彼此完全隔离的环境中运行。 一、并发控制的预备知识 (一) 并发控制概述 并发控制是以事务(transaction)为单位进行的。 1. 并发控制的单位――事务 事务是数据库的逻辑工作单位,它是用户定义的一组操作序列。一个事务可以是一组SQL 语句、一条SQL语句或整个程序。 事务的开始和结束都可以由用户显示的控制,如果用户没有显式地定义事务,则由数据库系统按缺省规定自动划分事务。 事务应该具有4种属性:原子性、一致性、隔离性和持久性。 (1)原子性 事务的原子性保证事务包含的一组更新操作是原子不可分的,也就是说这些操作是一个整体,对数据库而言全做或者全不做,不能部分的完成。这一性质即使在系统崩溃之后仍能得到保证,在系统崩溃之后将进行数据库恢复,用来恢复和撤销系统崩溃处于活动状态的事务对数据库的影响,从而保证事务的原子性。系统对磁盘上的任何实际数据的修改之前都会将修改操作信息本身的信息记录到磁盘上。当发生崩溃时,系统能根据这些操作记录当时该事

并行数据库系统

并行数据库系统 1并行数据库概述 并行数据库系统是在并行机上运行的具有并行处理能力的数据库系统,是数据库技术与并行计算技术结合的产物。 1.1并行数据库系统的目标: 1.高性能。通过将数据库在多个磁盘上分布存储,利用多个处理机对磁盘数据进行并行处理,解决过开发查询间并行性、查询内 并行性以及操作内并行性,提高查询效率。 2.高可用性。可通过数据复制来增强数据库的可用性,当一个磁盘损坏时,该盘上的数据在其他磁盘上的副本仍可供使用。 3.可扩充性。系统通过增加处理和存储能力而平滑地扩展性能的能力。 线形伸缩比:是指任务扩大N倍、系统处理和存储能力也扩大N倍时系统性能不变,即: 小任务在小系统上的运行时间与大(N倍)任务在大系统上的运行时间之比为1。 线形加速度比:是指任务不变、系统处理和存储能力扩大N倍时系统性能也提高N倍,即: 小系统上执行一个任务的时间与大( 1.2支持并行数据库的并行结构 1.2.1 共享内存(SM )并行结构 图1.1 SM结构并行计算机(负荷比较均衡、成本高、可用性不是很好)I/O瓶颈问题。通 N倍)系统上执行同一个任务的时间之比为N。

图1.2 SD结构并行计算机(成本低、可扩充性好、可用性强。实现起来比复杂)1.2.2共享磁盘(SD)并行结构 1.2.3无共享资源(SN)并行结构 图1.3 SN结构并行计算机(成本低、可伸缩性与可用性高。实现复杂、节点负荷难均 衡)

3 表1.1三种并行结构比较 2并行数据库的并行查询处理技术 顺序执行计划:SP ( Sequential plan ) 并行执行计划:PP ( Parallel plan ) 对于查询Q ,若某个并行执行计划PP 与Q 的一个顺序执行计划SP 对应于相同的操作树,则称 PP 为SP 的一个并行化方案,而由顺序执行计划 SP 得到的某个PP 的过程称为并行化。 例:求每个部门职工的平均工资,并按平均工资升序排列。 DEP T.DEPTNUM = EMP .DEPTNUM 1.2.4 种并行结构比较 SELECT DEPTNUM AVG (SAL ) AVGSAL FROM EMP GROU P BY DEPTNUM BY AVGSAL ; ORDER 这里,分组和排序可以并行(流水线式) 2.1并行粒度 并行粒度指的是查询执行的并行程度,可分为四种: (1) 事务间并行性。 是粒度最粗也是最容易实现的并行性。由于这种并行性允许多个进程或线索同时处理多个用户 (集中式数据库也这样做) (2) 请求,因此可以显著增加系统吞吐量,支持更多的并发用户。 查询间并行性(也就是事务内并行性) 同一事务内的不同查询 如果是不相关的,它们并行执行必将提高效率, 但是,同一事务内的查 (3) 询如果是相关的,它们并行执行比较复杂,系统必须进行相关性控制。 操作间并 行性(也就是查询内并行性) 同一查询内的不同操作往往可以并行执行。考虑一条 SQL 查询语句可以分解成多个子操作, 有多个处理机执行。例如下列查询: SELECT DEPTNUM , EMPNUM FROM DEPT , EMP WHERE

四大主流数据库比较

主流数据库比较 一、开放性 1. SQL Server 只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix 那样久经考验,尤其是在处理大数据库。 2. Oracle 能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 3. Sybase ASE 能在所有主流平台上运行(包括 windows)。但由于早期Sybase与OS集成度不高,因此VERSION11.9.2以下版本需要较多OS和DB级补丁。在多平台的混合环境中,会有一定问题。 4. DB2 能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。 二、可伸缩性,并行性 1. SQL server 并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 2. Oracle 并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果 windowsNT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。 3. Sybase ASE 虽然有DB SWITCH来支持其并行服务器,但DB SWITCH在技术层面还未成熟,且只支持版本12.5以上的ASE SERVER。DB SWITCH技术需要一台服务器充当SWITCH,从而在硬件上带来一些麻烦。

浅谈对并行数据库的认识

龙源期刊网 https://www.doczj.com/doc/8d7629888.html, 浅谈对并行数据库的认识 作者:张立荣 来源:《价值工程》2010年第11期 摘要: 网络技术的发展导致海量数据和信息的产生,如何对其进行正确有效组织和管理,这就对数据库的设计和实现提出了更高的要求,计算机数据库系统的应用和优化亦面临着挑战。本 文从并行数据库系统的体系结构、并行数据库的查询,聚集,排序及数据可靠性等方面入手,阐述了对并行数据库的认识和看法。 Abstract: The development of network technology led to massive data and information to be generated,how it can be correctly and effectively organized and managed,which put forward higher requirements to the design and achievement of database,and the computer database system and optimization also faces a challenge. This paper discusses the understanding on the parallel database from the architecture of parallel database systems,parallel database query,aggregation,sorting,and data reliability. 关键词: 并行;数据库;容错 Key words: parallel;database;fault-tolerant 中图分类号:TP392文献标识码:A文章编号:1006-4311(2010)11-0143-02 0引言 随着网络技术和计算机技术的飞速发展,人们的日常生活中产生着越来越多的数据和信息,如电卡消费记录等需要存储和保留,以方便用户查询留档。现有的单机系统对海量数据存储已 不能满足要求,对复杂的查询、聚集和排序等操作更是力不能及,因此对海量数据的有效管理是一个亟需解决的问题。本文从上述问题入手研究面向海量数据的并行数据库系统中查询、聚集和排序等操作及并行查询系统容错方法。 1研究前景 随着信息技术的发展网络的普及,各种应用业务需处理的数据量日益增长。对于大部分企 业来说,数据规模已达TB级以上,但由于传统数据库系统固有的I/O瓶颈和CPU瓶颈问题,一般意义上的服务器已经不能满足存储和访问的要求。而对于企业来说,为解决这些问题,很有必要设计一种基于多PC的并行数据库管理模式。 2发展现状

分布式数据库历年真题以及答案

数据库试题 目录 1. 九八年秋季试题 (5) 1.1. 概念题 (5) 1.1.1. 比较半连接方法和枚举法的优缺点。 (5) 1.1.2. 2PL协议的基本思想。 (5) 1.1.3. WAL协议的主要思想。 (5) 1.1.4. SSPARC三级模式体系结构。 (5) 1.1.5. 设计OID的数据结构时应考虑哪些问题。 (6) 1.2. 某个大学中有若干系,且每个系有若干个班级和教研室,每个教研室有若干个教 员,其中教授、副教授每个人带若干名研究生。每个班有若干名学生,每个学生可选修若干门课程,每门课程可由若干学生选修。完成下列各种要求: (7) 1.3. 下面是某学院的一个学生档案数据库的全局模式: (9) 1.3.1. 将全局模式进行分片,写出分片定义和分片条件。 (9) 1.3.2. 指出各分片的类型,并画出分片树。 (9) 1.3.3. 假设要求查询系号为1的所有学生的姓名和成绩,写出在全局模式上的SQL查 询语句,并要求转换成相应的关系代数表示,画出全局查询树,请依次进行全局优化和分片优化,画出优化后的查询树。要求给出优化变换过程。 (10) 1.4. 设数据项x,y存放在S1场地,u,v存放在S2场地,有分布式事务T1和T2,T1在S1场 地的操作为R1(x)W1(x)R1(y)W1(y),T2在S1场地的操作为R2(x)R2(y)W2(y);T1在S2场地上的操作作为R1(u)R1(v)W1(u),T2在S2场地上的操作作为W2(u)R2(v)W2(v)。对下述2种情况,各举一种可能的局部历程(H1和H2),并说明理由。 (11) 1.4.1. 局部分别是可串行化,而全局是不可串行化的 (11) 1.4. 2. 局部和全局都是可串行化的。要求按照严格的2PL协议,加上适当的加锁和解 锁命令,(注意,用rl(x)表示加读锁,wl(x)表示加对x加写锁,ul(x)表示解锁)12 1.5. 试述面向对象的数据库系统中页面服务器和对象服务器两种Client/Server体系 结构的主要特点, (12) 2. 九九年春季试题 (13) 2.1. DBMS解决了信息处理技术中的哪些挑战? (13) 2.2. 在关系数据库应用设计中,为什么要对数据库模式进行规范化? (13) 2.3. 简述ACID特性。 (14) 2.4. 长事务处理有哪些特性,如何解决? (15) 2.5. 数据库系统体系结构有哪几类,每种类型的特点是什么,关键技术有哪些?. 16 2.6. 决策支持类应用与OLTP应用对于数据库系统的要求有哪些不同,支持前者的关键 技术有哪些,并简述之。 (17) 2.7. 面向对象的数据库是如何产生的,其基本原理是什么?有哪些创新特性? (18) 2.8. r i ∝r j 一定等于r j ∝ r i 吗?在什么条件下r i ∝r j = r j ∝ r i 成立? (18) 2.9. 为了设计一个健壮的分布式系统,你必须知道可能发生哪种类型的失败。 (18) 2.9.1. 请列出在分布式系统中可能的失败类型: (18) 2.9.2. 在你列出的失败类型中,哪些也可能发生在集中式系统中? (19) 2.9. 3. 对于每一种失败类型,在失败发生情况下,两段提交机制如何保证事务的原 子性? 19 3. 九九年秋季试题 (19)

分布式并行数据库集群GBase 8a MPP Cluster技术白皮书

GBase 8a MPP Cluster (集群) 技术白皮书V8.5.1.2

GBase 8a MPP Cluster技术白皮书,南大通用数据技术股份有限公司 GBase版权所有?2004-2015,保留所有权利。 版权声明 本文档所涉及的软件著作权、版权和知识产权已依法进行了相关注册、登记,由南大通用数据技术股份有限公司合法拥有,受《中华人民共和国著作权法》、《计算机软件保护条例》、《知识产权保护条例》和相关国际版权条约、法律、法规以及其它知识产权法律和条约的保护。未经授权许可,不得非法使用。 免责声明 本文档包含的南大通用公司的版权信息由南大通用公司合法拥有,受法律的保护,南大通用公司对本文档可能涉及到的非南大通用公司的信息不承担任何责任。在法律允许的范围内,您可以查阅,并仅能够在《中华人民共和国著作权法》规定的合法范围内复制和打印本文档。任何单位和个人未经南大通用公司书面授权许可,不得使用、修改、再发布本文档的任何部分和内容,否则将视为侵权,南大通用公司具有依法追究其责任的权利。 本文档中包含的信息如有更新,恕不另行通知。您对本文档的任何问题,可直接向南大通用数据技术股份有限公司告知或查询。 未经本公司明确授予的任何权利均予保留。 通讯方式 南大通用数据技术股份有限公司 天津华苑产业区海泰发展六道6号海泰绿色产业基地J座(300384) 电话:400-817-9696 邮箱:info@https://www.doczj.com/doc/8d7629888.html, 商标声明 是南大通用数据技术股份有限公司向中华人民共和国国家商标局申请注册的注册商标,注册商标专用权由南大通用公司合法拥有,受法律保护。未经南大通用公司书面许可,任何单位及个人不得以任何方式或理由对该商标的任何部分进行使用、复制、修改、传播、抄录或与其它产品捆绑使用销售。凡侵犯南大通用公司商标权的,南大通用公司将依法追究其法律责任。

并行数据库系统

并行数据库系统 胡经国 本文作者的话 本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢! 下面是正文 一、概述 并行数据库系统(Parallel Database System)是新一代高性能的数据库系统,是在MPP和集群并行计算环境的基础上建立的数据库系统。 并行数据库技术起源于20世纪70年代的数据库机(Database Machine)研究。其研究内容主要集中在关系代数操作的并行化和实现关系操作的专用硬件设计上;希望通过硬件实现关系数据库操作的某些功能,该研究以失败而告终。20世纪80年代后期,并行数据库技术的研究方向逐步转到了通用并行机方面。其研究的重点是并行数据库的物理组织、操作算法、优化和调度策略。从20世纪90年代至今,随着处理器、存储、网络等相关基础技术的发展,并行数据库技术的研究上升到一个新的水平;研究的重点也转移到数据操作的时间并行性和空间并行性上。 链接:MPP MPP(Massively Parallel Processing,或Massive Parallel Processor,大规模并行处理)系统,是由许多松耦合处理单元组成的。要注意的是,这里所指的是处理单元而不是处理器。在每个处理单元内的CPU都有自己私有的资源,如总线、内存、硬盘等。在每个处理单元内都有操作系统和管理数据库的实例复本。这种结构最大的特点在于不共享资源,适合多指令流、多数据流处理。 在计算机体系结构中,MPP在20世纪90年代盛行。如今,世界上排名靠前的大型处理机,都是MPP。 二、性能目标 并行数据库系统的目标是高性能(High Performance)和高可用性(High

Oracle数据库并行处理技术详解

Oracle数据库并行处理技术是数据库的一项核心技术,它使组织能够高效地管理和访问TB级的数据。如果不能提供高效的Oracle数据库并行处理技术,这些大型数据库(通常用于数据仓库但也越来越多地出现在业务系统中)将不会存在。 简而言之,并行处理就是利用多个CPU和I/O资源来执行单个数据库操作。尽管现在每个主要的数据库供应商都声称可以提供并行处理能力,但每个供应商所提供的体系结构其实存在关键的差异。 本文讨论Oracle 9i并行处理的体系结构,并说明于在实际应用中其相对于其它体系结构的优越性。需要着重指出的是,Oracle9i并行处理体系结构的主要优点在于它能在任何情况下完全利用底层硬件基础架构——每个处理器单元、每个内存字节以及所有可用的I/O带宽。本白皮书还讲述Oracle 并行处理组件与其它关键业务组件(例如:Oracle RealApplication Cluster)的无缝集成。 Oracle数据库并行处理技术简介 现在的数据库,无论是用于数据仓库、操作数据存储(ODS)或OLTP 系统,都包含丰富的信息。然而,由于其中涉及海量数据,及时查找和展示信息是一个巨大的挑战。Oracle数据库并行处理技术能够解决这一挑战。使用Oracle数据库并行处理技术,数分种内(而非数小时或数天)就可以处理数TB级的数据。Oracle数据库并行处理技术通过利用所有可用的硬件资源取得这样的高性能:多个CPU、多个I/O通道、多个存储阵列和磁盘驱动器,以及大量的内存。数据库软件越能有效地利用所有这些资源,处理查询和其它数据库操作就越有效。 此外,现在的数据库应用的复杂性大大都增强了,不仅需要支持大量并发用户,而且需要管理不同类型的用户。因此,一个并行查询体系结构不仅应该确保底层硬件平台的所有资源都得到充分利用,而且应该更进一步,将这些资源适当地分配给多个并发请求。很显然,支持CEO的战略决策的请求比执行批处理报表更加重要,并行查询体系结构应该能够处理这些商务要求:不仅基于请求自身,而且应该基于发出请求的人以及当前可用的系统资源的数量来做出动态的分配。 Oracle9i 的并行处理体系结构能够全面满足这些要求,Oracle9i的体系结构不仅提供业界领先的高性能,而且是唯一可以自适应和动态调整的。 Oracle9i 的并行处理体系结构充分利用每种硬件投资――SMP、群集或MPP的优势——在任何时间保证最佳的吞吐量和连续的、优化的系统使用量。 Oracle9i 数据库根据可用资源、请求优先级和实际系统负载控制来平衡所有并行操作。 Oracle数据库并行处理技术并行化设计策略——静态与动态 并行处理的思想就是将单个任务分解为多个更小的单元。不是通过一个进程完成所有工作,而是将任务并行化而使多个进程同时在更小的单元上运行。这可以极大地提高性能和最佳地利用系统。然而,并行处理的最关键部分是如何作出将单个任务分成更小的工作单元的正确决策。 典型地,有两种方法用于实现数据库系统的并行处理。主要区别在于是否需要进行物理数据布局,将静态的数据分区作为并行处理的前提。 Oracle数据库并行处理技术之通过物理数据分区的静态并行——不共享 在纯不共享数据库体系结构中必须将数据库文件在多计算机系统的节点上进行分区才能进行并行处理。每个节点拥有一个数据子集,拥有节点使用单一进程或线程,以独占方式执行对此数据子集的所有访问。数据访问不能在分区内并行。(有时,也用术语“虚拟处理器”来代替节点。“虚拟处理器”是在SMP计算机上模拟不共享节点的一种机制。为了简单,在讨论不共享体系结构时,我们将统一使用“节点”作为术语)。换句话说,纯不共享系统使用分区或受限访问方法在多个处理节点间划分工作。节点对数据所有权的改变相对少见——为了适应业务需求的改变而进行的数据库重组、添加或删除节点以及节点故障是所有权更改的典型原因。这种数据所有权的改变对纯不共享系统而言总是意味着要进行人工管理。

相关主题
文本预览
相关文档 最新文档