当前位置:文档之家› 分布式数据库系统复习材料

分布式数据库系统复习材料

分布式数据库系统复习材料
分布式数据库系统复习材料

第一章

1、世界上第一个分布式数据库系统SDD—1是由美国计算机公司(CCA)于1976年至1979年在DEC—10和DEC—20计算机上实现。

2、分布式数据库系统是数据库系统与计算机网络相结合的产物

3、12条规则既不是相互独立的,也不是同等重要的,完全实现难度很大。

4、实现和建立分布式数据库系统绝对不是数据库技术与网络技术的简单结合。分布式数据库系统虽然基于集中式数据库系统,但却有它自己的特色和理论基础。

5、一些商品化的数据库系统产品,如Oracle,Ingres,Sybase,Informix,IBM DB2等

6、关系技术是分布式技术的一个先决条件。

7、分布式数据库系统是物理上分散而逻辑上集中的数据库系统。分布式数据库系统使用计算机网络将地理位置分散而管理和控制又不需要不同程度集中的多个逻辑单位连接起来,共同组成一个统一的数据库系统。因此,分布式数据库系统可以看成是计算机网络与数据库系统的有机结合。

8、在分布式数据库系统中,被计算机网络连接的每个逻辑单位是能够独立工作的计算机,这些计算机称为站点也称为结点。

9、在分布式数据库系统中,一个用户或一个应用如果只访问他注册的那个站点上的数据称为本地(或局部)用户或本地应用;如果访问涉及两个或两个以上的站点中的数据,称为全局用户或全局应用。

10、一个分布式数据库系统应用应该具有以下几种特点:

(1)物理分布性:分布式数据库系统的数据具有物理分布性,这是与集中式数据库系统的最大差别之一

(2)逻辑整体性:区别一个数据库系统是分散式还是分布式,只需判断该数据库系统是否支持全局应用

(3)站点自治性:各站点上的数据由本地的DBMS管理,具有自治处理能力,完成本站点的应用(局部应用),这是分布式数据库系统与多处理机系统的区别

11、数据分布透明性是指用户不必关心数据是如何被逻辑分片的,不必关心数据及其片段是否被复制及复制副本的个数,也不必关心数据及其片段的物理位置分布的细节,同时也不必关心局部场地上数据库支持哪种数据模型

12、增加数据冗余度方便了检索,提高了系统的查询速度、可用性和可靠性,但不利于数据的更新,这将增加系统维护的成本

13、按局部数据库管理系统的数据模型分类

(1)同构型:同构同质型、同构异质型

(2)异构型

14、按分布式数据库系统的全局控制系统类型分类:全局控制集中型DDBS、全局控制分散型DDBS、全局控制可变型DDBS

15、在集中式数据库系统中,除了计算机本身的硬件和软件外,主要成分有:数据库DB、数控管理系统DBMS和数据库管理员DBA。分布式数据库系统在次基础上做了扩充:数据库分为局部DB和全局DB;数据库管理系统分为局部DBMS和全局DBMS;数据库管理员分为局部DBA和全局DBA

15、分布式数据库有两部分组成:一部分是关于应用所需要的数据的集合,称为应用数据库,它是分布式数据库的主体;另一部分是关于数据库中数据结构的定义,以及全局数据的分片、分布的描述,称为数据字典、数据目录或元数据

16、局部数据目录是指本站点中的局部数据字典,而全局数据目录就是全局数据字典,又称网路数据,是提供全局数据的描述和管理的相关信息,如数据的结构定义,数据的分片、分

布处理、授权、事务恢复等的必要信息

17、数据分片有三种基本方法:水平分片、垂直分片、混合分片

18、定义各类片段要遵守的规则:完备性条件、可重构条件、不相交条件

19、所谓数据分布是指分布式数据库中的数据不是存储在一个站点的计算机存储设备上,而是根据需要将数据划分成逻辑片段,按某种策略将这些片段分散地存储在各个站点上

20、数据分布的策略有:集中式、分割式、复制式、混合式

21、集中式数据库的模式结构:内模式、模式、外模式

22、分布式数据库是多层模式结构:(1)全局外层:全局外模式(2)全局概念层:全局概念模式、分片模式、分配模式(3)局部概念层:局部概念模式(4)局部内层:局部内模式23、分布式数据库管理系统的功能模块:

(1)查询处理模块|:查询处理模块至少由两部分组成:查询分析和优化处理

(2)完整性处理模块:该模块主要负责维护数据库的完整性和一致性规则,处理多副本数据的同步更新等

(3)调度处理模块

(4)可靠性处理模块

24、(分布式中)所谓数据分布独立性是指用户或用户程序使用分布式数据库如同使用集中式数据库那样,不必关心全局数据的分布情况,包括全局数据的逻辑分片情况、逻辑片段的站点位置分配情况,以及各站点上数据库的数据模型等。

25、分布透明性有三层:分片透明性、位置透明性、局部数据模型透明性

26、分片透明性是分布透明性的最高层。当分布式数据库具有分片透明性时,用户编写应用程序只对全局关系进行操作,不必考虑数据的逻辑分片,当分片模式改变时,只要改变全局概念模式到分片模式之间的映像,就不会影响用户程序,从而实现了数据分片透明性。27、位置透明性也称分配透明性是分布透明性的中间层。当分布式数据库具有位置透明时,用户编写应用程序要了解全局数据的数据分片情况,但不必了解各逻辑片段的复制副本情况,也不必关心各片段及其副本的站点位置分配情况。当片段及其副本的存储站点改变时,只要改变从分片模式到分配模式之间的映像,就不会影响用户程序,从而实现了数据片段的位置透明性

28、局部数据模型透明性也称局部映像透明性,即与各站点上数据库的数据模型无关,是分布透明性的最底层。

29、如果一个分布式数据库系统提供分片透明性,当然它也提供分配透明性和局部数据模型透明性,所以也称完全分布透明性,是分布透明性的最高级别

如果一个分布式数据库系统提供分配透明性,而没有提供分片透明性,当然它也提供局部数据模型透明性,所以也称为中级分布透明性

如果一个分布式数据库系统只提供局部数据模型透明性,不提供分片透明性,也不提供分配透明性,称为低级分布透明性

如果一个分布式数据库系统,连局部数据模型透明性也不提供,即将异构数据模型转换也交给用户和用户程序自己处理,称为无分布透明性

30、分布式数据库系统的有点:良好的可靠性和可用性、提高系统效率,降低通信费用、较大的灵活性和可伸缩性、经济性和保护投资

31、分布式数据库系统中存在的技术问题:数据的分片、分布与冗余度;异构数据库的互联;分布式数据库的查询处理;分布式数据库的更新处理

第二章

1、分布式数据库系统的创建方法即分布式数据库系统的实现方法,大致可分为两种:组合法和重构法。

2、组合法也称为集成法,这是一种自底向上的创建方法。

3、创建分布式数据库系统应考虑:一方面要对网络系统的功能进行剖析,另一方面还需要对各个站点上原有的数据库系统进行剖析。除此之外,还需解决数据的一致性、完整性以及可靠性。(此方法是建立在原有的系统里)

4、重构法是根据系统的实现环境和用户需求,按照分布式数据库系统的设计思想和方法,采用统一的观点,从总体设计做起,包括各站点上的数据库系统,重新建立一个分布式数据库。(此方法是建立在新建的系统里)

5、重构法的优点在于,可以按照统一的思想来考虑分布式数据库系统中的各种问题,有效地解决分布式数据库系统的数据一致性、完整性和可靠性。

6、(简答题)分布式数据库设计的目标包括集中式数据库设计中的目标,还要包括以下几点:(1)分布式数据库的本地性或进地性。分布式数据库系统中最重要的目标是尽量减少对网络的利用,即尽可能减少站点之间的通信次数和通信量。所以,分布式数据库设计中的一个主要原则是使数据和应用实现最大程度的本地性。

(2)控制数据库的适当冗余。这不仅使应用具有高度的可用性和本地性,而且当数据的任何一个副本不能使用时,可方便地使用在另一站点中的该数据的副本进行恢复,从而提高系统的可靠性。

(3)工作负荷分布。分布式计算机系统的一个重要特征是把工作负荷分布在网络中的各个站点上。

(4)存储的能和费用。数据库的分布会受到各站点的存储能力的影响。在网络中可以有专门用于存储数据的站点。数据存储的费用与CPU,I/O及传输的费用相比是不重要的,但是必须考虑各站点可用存储空间的限制。

(P43具体实现,第三段)

7、分布式数据库系统的创建方法有重构法和组合法,相应的分布式数据库设计方法也有两种方法,即自顶而下方法和自底而上方法。前一种方法是从头开始设计分布式数据库,而后一种方法则通过聚集现存的数据库来设计分布式数据库。

8、设计集中式数据库的一般方法包括四个阶段:需求分析、概念设计、逻辑设计和物理设计。

分布式数据库设计出了上述阶段外,还要增加一个新的阶段,叫做分布设计,它位于逻辑设计与物理设计之间,以一个全局的、与站点无关的模式作为输入,以产生分布式数据库各站点的子模式(局部概念模式)作为结果输出。

9、分布式数据库的分布设计要求确定数据的分片和片段的分配。分片是指把一个全局对象(实体或关系)细分成若干逻辑片段的过程;分配是指把各片段映射到一个或多个站点的过程,片段是最适合的数据分配单位。

10、在自顶向下的数据分布设计中,必须要解决的第一个问题是数据的分片设计。

11、因此,如果同一个片段的任意两个元素具有“相同的性质(例如访问频率相同)”的话,那么数据分配时所用的任意一种丰富都将把这两个元素放在一起,以这种方式得到的片段将是分布式数据库中数据合适的分配和存储单位。

12、分片设计的基本目的是产生一个对全局数据合适的划分方案。

13、P45 数据分片的基本类型和方法(全看)

14、数据分片方法两种:水平分片与垂直分片。两者交替可以产生混合分片。

15、水平分片的方法可归为初级分片和导出分片两类。

16、P45 例2.1,2.2,2.3

17、P48 垂直分片(全看)

18、在确定数据片段的位置分配时,应根据应用需求确定设计是非冗余分配还是冗余分配。在非冗余分配中,每个片段恰好映射到一个站点上;在冗余分配中,每个片段映射到一个或多个站点上。

19、在非冗余分配的设计中,最简单的方法是“最佳适应”方法。

20、冗余分配的设计可选用如下两种方法的任意一种。1)“所有得益站点”法2)“附加复制”法

21、P50 数据片段分配的费用和得益估算

22、DA TAID—D是自顶向下设计分布式数据库的一个典型方法。

23、DA TAID-D要求对其增加两个阶段:分布要求分析阶段和分布设计阶段。

1)分布要求分析阶段:需要这一阶段是为了收集关于分布的信息,如水平分片的划分谓词,每一应用在各站点激活的频率等。

2)分布设计阶段:这一阶段始于全局数据库模式的规格说明和所收集的分要求,然后产生全局数据的分片模式和片段的位置分配模式,分配模式描述了分配在各站点上的数据情况。

24、建立三种类型的表作为分部要求分析阶段的输出:应用的频率表、实体的划分表和数据与应用的极化表。

25、分布设计的目的是从全局数据模式、逻辑访问表和分布要求出发,将数据分配在站点上。

26、DA TAID-D中的分布设计分成四个阶段:

1)分片设计,对实体进行水平分片和垂直分片。

2)非冗余分配,它的执行是把各片段映射到使用最多的站点上。

3)冗余分配,它的执行是使用“贪婪”启发式,可以采用上面已经阐述过的“所有得益站点法”或采用“附加复制法”。

4)局部模式重新构造,DATAID-D方法建议把联系放置在具有最大基数性的实体或片段的站点上,使得必须传送的实体标识符及可能少。

27、把现有的数据库集成起来构成分布式数据库时,可采用自底向上的方法。这种方法重点是把现有的各种不同的数据库模式集成为全局模式。所谓集成就是把公用数据定义合并起来,并解决对同一数据的不同表示方法之间的冲突。

28、注意,自底向上的设计方法不宜于水平分片关系的设计。

29、模式差异包括命名冲突、域差异、定标差异和结构差异。

30、处理操作期间的不一致数据。

1)存储在不同站点的雇员实体的两个示例碰巧有相同的标示符,但薪水属性值不同。

2)另一种可能性是,同一雇员在两个站点有两种不同的工作,并且薪水属性正好涉及这两种不同的工作。

3)不一致的第三个原因可能是逐渐过时所致,这种情况也可以在模式级解决。把两个薪水处理成异物同名(即老薪水和新薪水)。否则,有可能在查询修改时指明应使用最新值(在这种情况,薪水属性必须盖上时间戳)。

4)不一致性的第四个原因是由于不符合逻辑错误的实际存在的不正确性。

1、分布式查询优化的目标:一种目标是以总代价最小为标准,除了如集中式数据库系统一样考虑CPU代价和I/O代价之外,总代价还包括通过网络在站点之间传输数据或信息的代价。另一种目标是以每个查询的响应时间最短为标准。

2、在分布式查询优化中常常用时使用这两种标准,根据系统应用的不同,一种作为主要标准,另一种作为辅助标准。

3、分布式查询优化的准则是使通信费用最低和响应时间最短,即以最小的总代价,在最短的响应时间内获得需要的数据。

4、查询代价分析

(1)在远程通信网中,查询的局部处理时间与通信所需时间相比,可以忽略不计,减少通信费用成为分布式查询优化的主要目标

(2)在高速局域网中,往往以响应时间作为优化目标

在某些情况下,查询处理同时以减少通信费用与响应时间作为优化目标,这时在这两者之间要作出权衡

5、分布式查询的分类:局部查询、远程查询、全局查询

6、局部查询的一般策略:

(1)选择和投影运算应尽可能先做,这是因为选择和投影运算使中间结果数据大大减少(2)在执行连接前对数据库数据进行适当的预处理

(3)同时执行一串投影和选择操作,尽可能把它们与其前后的二元操作结合起来,以避免重复扫描关系和减少中间数据

7、全局查询

(1)具体化。对查询进行分解,确定查询使用的物理副本,落实查询对象。冗余具体化的目标是:通过冗余数据提高处理的并行性和减少通信费用

(2)确定操作执行的次序。主要是确定二元操作连接和并操作的次序,其他操作的次序是不难确定的。

(3)确定操作执行的方法。这包括把若干个操作连接起来在一次数据库访问中执行,确定可用的访问路径,以及确定某种计算方法。

(4)确定执行站点。全局查询执行的站点不一定就是发出查询的站点,全局查询原则上可以在网络上的任意站点上执行,然后将结果传送到发出查询的站点。

8、分布式查询处理的层次结构

(1)查询分解。是将查询问题转换成一个定义在全局关系上的关系代数表达式

(2)数据本地化。是把一个在全局关系上的查询,进行具体化落实到适合的片段上的查询(3)全局优化。即是找出分片查询的最佳操作次序,包括使得代价函数最小。

(4)局部优化。由拥有与查询有关的片段的各个站点执行。在每一个站点上执行的子查询被称为局部查询。

9、基于关系代数等价变换优化算法的基本原理是:把查询问题转变为关系代数表达式,分

析得到查询树,进行从全局到片段的变换得到基于片段上的查询树,然后利用关系代数等价变换规则的优化算法,尽可能先执行选择和投影操作。这样,一方面可以减少其后操作的操作量,另一方面可以减少操作次数。对查询树进行优化,从而达到查询优化的目的。

10、究竟用直接连接(全连接)方案还是用半连接方案,取决于对数据传输和局部处理的相

对费用。

11、站点依赖算法的数据传送量最小,连接数据量最小且能利用索引,因而能获得最佳性能。

其次是Hash划分算法,最后是片段和复制算法。

1、(名词解释)所谓最小是指这个操作序列的全部操作都成功完成,才能使数据库从一种一致状态转换到另一种一致状态。在分布式数据库系统中,任何一个应用的请求最终都将转化成对分布在网络中相应站点上的数据库数据存取操作的序列,因此分布式数据库系统中的事务是一个分布式操作的序列,被操作的数据分布在不同的站点上,所以成为分布式事务。

2、一般地,主事务负责事务的开始、提交和异常终止;各个子事务完成对相应站点上数据库的访问操作。所谓“全局事务”是指一个要求访问或更新多个站点上数据的事务,所谓“局部事务”是指一个仅仅访问或更新一个站点上数据的事务。

3、分布式事务的特点:(ACID)

1)原子性,引起数据库改变的操作全部都成功执行,要么都不执行。

2)一致性,分布式事务的一致性简单地说是指事物的正确性,或者说一个分布式事务是一个使分布式数据库从一个一致转台转变为另一个一致状态的正确性程序。

3)隔离性,分布式事务的隔离性是指一个正在执行的事务在其提交之前,决不允许把它们对共享数据所作改变的结果提供给其他事务使用。

4)持久性,分布式事务的持久性也称为永久性,是指一旦某个事务被提交了,则无论系统发生任何故障,都不会丢失该事务的执行结果。

4、由于分布式数据库的分布特性,使得分布式事务还具有自己独有的特性:在分布式事务中,除需要考虑访问数据库的存取操作序列外,还必须考虑大量的数据传送、通信原语和控制报文等,这些都是的分布式事务所特有的性质。

5、事务以begin transaction原语作为一个事务的开始,以commit原语作为一个事务成功完成的结束,而以rollback或abort原语作为事务失败的结束。

6、(名词解释)事务代理:在分布式数据库系统中,为了完成在不同站点上的相应功能,分布式应用必须在这些站点执行若干进程,这些进程就称为该应用在那个站点上的“事务代理”。

7、分布式事务管理的问题:(1)处理数据项的多个副本(2)单个站点的故障(3)通信网络的故障(4)分布式提交

8、事务管理的任务就是负责当若干个事务并发执行和事务执行发生错误时,使数据库仍保持一致状态。

9、事务管理所追求的理想目标是高执行政策、高并性和高可靠性,分布式事务管理也不例外,而且内容更加丰富。这三大理想目标往往不能兼得,因为它们之间密切相关,而又矛盾。可靠性措施会使效率下降,而事务运行效率不仅取决于所采用的策略,还与下列因素有关:(1)CPU和主存利用率(2)控制报文(不含任何应用数据仅含控制性息的报文)(3)响应时间(4)可以性

10、分布式事务管理的目标是:1)维护分布式事务的原子性、一致性(可串行性)、耐久性和隔离性。2)获得最小的主存和CPU开销,降低控制报文的传输个数和加快分布式事务的影响速度。3)获得最大限度的系统可靠性和可用性。

11、(填空)在分布式数据库系统中,事务管理功能分成两个层次,集中式数据库系统中的局部事务管理(LTM)进行局部事务的管理,分布式事务管理器(DTM)共同协作,实现对分布式事务的协调和管理。

12、(简答题)LTM的结果和功能包括:

1)保证本地事务的ACID特性。

2)维护一个用于恢复的日志,代替DTM把用于分布式事务执行和恢复的信息记入日志。

3)参与适当的并发控制模式,以协调在该站点上执行的事务的并发执行。接受并听

从本站点上DTM代理发来的LOG原语,记入日志并执行之。

13、分布式事务管理DTM的功能主要包括:

1)保证分布式事务ACID特性,尤其是执行分布式事务的原子性,使每一站点的子事务都成功执行,或都不执行。这是通过向各站点发begin transaction,commit,abort,create 原语来实现的。

2)负责协调由该站点发出的所有分布式事务的执行。包括:启动分布式事务的执行;将分布式事务分解为一些子事务,并将这些子事务分派到恰当的站点上去执行;决定分布式事务的终止,即决定在该分布式事务中所包含的所有站点上的子事务都撤销或都提交。

3)支持分布式事务的执行位置透明性,它实现了对网络上个站点的个子事务的监督与管理,完成对整个分布式事务执行过程的调度和管理,从而保证分布式数据库系统的高效率。

14、控制分布式事务执行的控制模型有:主从模型、三角模型和层次模型。

15、P105 主从控制模型、三角控制模型(是什么样子的)、层次控制模型

16、在集中式数据库系统中,故障分为事务故障(计算溢出、完整性被破坏、操作员干预、输入或输出错等)、系统故障(CPU出错、死循环、缓冲区满、系统崩溃等)和介质故障(DB 因介质损坏无法访问等)。

17、通信故障可分为报文故障和网络分割(网络断连)故障。而报文故障又可分为报文错、报文失序、报文丢失和长时间的延迟。对报文错和报文失序现今网络都可检测和处理,所以通信故障主要是报文丢失、报文延迟和网络分割。

18、恢复的基本原理是数据冗余。

19、(名词解释)事务恢复:当发生事务故障时,保证事务原子性的措施称为事务故障恢复,简称事务恢复。事务恢复主要是依靠日志来实现的。

20、P109 事务状态转移图

21、当事务T所有的站点数据库存取操作都已成功执行,并且所有操作对数据库的影响都已记录在日志中时,该事务T就达到提交点(committed point)。

22、需要注意的是,必须将日志文件保存在磁盘上。

23、在事务达到提交点以前,还未写到磁盘的日志的任何部分不,必须被写入磁盘,这称为事务提交前强制写日志。

24、日志会被定期备份到归档存储设备(例如磁盘)中,以预防磁盘盒灾难性故障。

25、为了防止因介质故障而破坏数据库,要定期将整个数据库的全部内容转储到档案库中。

26、为了便于恢复,在日志中设定一种周期性(时间/容量)操作点,称为检查点,以标识检查点前已执行完的事务是正确的。

27、因此在写检查点时间是要讲缓冲区中的所有内容写入到永久存储设备中,而且采取“先写日志”的原则。

28、事务恢复主要是依靠日志来实现。恢复的原则是:(1)孤立和逐步退出事务的原则。(2)成功结束事务原则。(3)夭折事务的原则。

29、P112 本地事务的恢复

30、两阶段提交协议

把分布式事务的某一个代理指定为协调者,所有其他代理称为参与者。只有协调者才有掌握提交或撤销事务的决定权,而其他参与者各自负责在其本地数据库中执行写操作,并向协调者提出撤销或提交子事务的意向。

2PC保证分布式事务提交的原子性,这是通过坚持在分布式事务的结果生效以前所有参与执行分布式事务的站点都同意提交而做到这一点的。如果某个事务正在读一项由另一个还未提交的事务更新的数据项的值时,相应的调度程序就不会同意马上提交该事务;另一种参与者不同意提交的可能的原因是发生了死锁,这要求某一个参与者撤销事务。

31、第一阶段是表决阶段,目的是形成一个共同的决定。

第二阶段是执行阶段,目的是实行这个决定。

32、两阶段提交协议的通信结构

·因为通信只发生在协调者和参与者之间,参与者之间不交换消息。(集中式2PC通信结构)·在协调者和参与者之间的通信不用直接广播的方法进行,而是使报文在树中上下传播。(分层式2PC通信结构)

·实现两阶段提交协议时,在第一阶段使用了向前通信方式,从协调者1到N;第二阶段使用了向后通信方式,即从N到协调者。(线性2PC的通信结构)

·允许所有的参与者在第一阶段相互通信,以便它们能独立作出关于特定事务的终止决定。它不需要第二阶段(分布式2PC的通信结构)

33、多站点的数据更新的原则和方法

在分布式数据库中引入多站点的数据(冗余数据)的目的是为了获得高查询速度。即以增加数据复制的代价来减少数据通信的代价,并增强系统的高可靠性和高可用性。由于数据复制在多个站点上,一旦要对其中某个副本进行更新时,就必须对这个数据库的所以复制副本同时做同样的更新。这即是多站点数据更新的原则,也是保证分布式数据库一致性的要求。34、主文本更新法

(1)基本思想:对每一个有多副本的数据,指定其中一个副本为主文本,其他为辅文本。一般,不同的数据其主文本在不同的站点上,对一个数据的更新,只要对它的主文本进行更新,就认为完成了对该数据的更新。然后由拥有主文本的站点负责把对主文本所做的更新,及时发送给各个辅文本站点进行更新。各个辅文本的更新可并行进行。如有与主文本站点尚未连通的辅文本站点,在连通后按记录的更新顺序逐一进行更新。

(2) 改进方法:采用“移动主文本法”。若初次更新在某个辅文本站点上进行,然后再把更新引向该数据的站点。如果主站点此时尚未连通,则另选一个辅站点中的辅文本为该数据进行更新,待原文本站点连通后,系统将自动把它改为辅文本,并按记录要求执行更新。若初次更新就在主文本上进行,而主文本站点现在与网络未连通,即做本地更新,则这次更新操作失败,事务被撤销。

35、一致性约束可分为两大类:一类是客观世界本身存在的一定规则,即业务规则的一致性约束;另一类是分布式数据库管理的需要。如为了提高系统效率和可靠性采用冗余数据,即冗余数据的一致性约束。

36、业务规则分为有效性约束和数据依赖约束。有效性约束的业务规则主要是域约束;数据依赖约束的业务规则则是指实体完整性约束和引用完整性约束

37、在分布式数据库中,冗余数据必须保持一致性。在分布式数据库设计时,数据库管理员把关系的片段分配到多个成员站点是出于以下两个主要原因:

(1)提高系统的可靠性和可用性。如果用户由于某种原因不能访问某个成员数据库,那么他们可以访问另一个成员数据库上的相同片段。

(2)提高“读”事务的本地性,以降低通信成本,特别是对读出比写入频率高的多的那些应用;但是如果事务包含对片段的更新,则其所有副本也必须做同样的更新,这时反而增加而不是降低通信成本。

38、异步复制器

最近数据库厂家推出了几种新的产品,这些产品称为数据复制器。采用一种级联策略对复制片段或复制表中的数据值进行同步更新。复制器强制更新用户更新数据的主副本,然后把更新迁移到其余的副本上。

第五章

1、分布式并发控制主要解决多个分布式事务对数据并发执行的正确性。

2、集中式数据库系统中,事务的并发操作提高了系统的运行效率,但也带来了一些问题:

丢失更新问题、不一致分析问题、依赖于未提交更新的问题

3、对一组并发的分布式事务可能存在多种正确调度,分布式DBMS事务管理器的并发控制机制应该采用那种代价最小的正确调度。与集中式数据库系统一样,可串行化调度也是分布式事务能否正确执行的基本方法。

4、事务的可串行性是指若干个事务并发执行的结果与按希望的顺序执行的结果相同时,称诸事务是可串行的。

5、优先图中存在环路,那么调度S就是不可串行化的,否则S就是可串行化的。

6、大多数并发控制机制并不是真正通过测试来确定调度是否为可串行化的,而是使用协议或规则来保证一个调度是可串行化的。

7、我们将讨论多种保证可串行化的并发控制协议。其中最常用的是两阶段封锁协议,它基于的是对数据项进行封锁,以阻止并发事务收到其他事务的干扰,并且执行一个附加的确保可串行化的条件。

8、把并发控制机制划分为两种类型,悲观并发控制法和乐观并发控制法。

9、封锁的方法:集中式封锁方法、主副本封锁法、分布式封锁法

10、锁的类型:共享锁(S锁或读锁)和排他锁(X锁或写锁)

第八章

1、服务器可分为文件服务器、数据库服务器、事务服务器、文档服务器、其他服务器

2、数据库应用程序可分解为四个组成成分

(1)界面表示逻辑。最流行的界面表示逻辑设施是各种图形用户界面(GUI)

(2)业务处理逻辑。这是使用数据库来完成业务处理和规则的应用代码

(3)数据处理逻辑。这是应用程序中负责数据逻辑。

(4)数据库管理。这是应用程序中由DBMS来完成实际数据存取处理的程序。

3、服务器要有数据管理、处理能力,能提供网络传输优化能力。

4、C/S即一个提出请求的应用程序,另一个是服务程序

5、分布式数据库的访问主要有:远程请求、远程事务、分布式事务、分布式请求

分布式数据库管理系统简介

分布式数据库管理系统简介 一、什么是分布式数据库: 分布式数据库系统是在集中式数据库系统的基础上发展来的。是数据库技术与网络技术结合的产物。 分布式数据库系统有两种:一种是物理上分布的,但逻辑上却是集中的。这种分布式数据库只适宜用途比较单一的、不大的单位或部门。另一种分布式数据库系统在物理上和逻辑上都是分布的,也就是所谓联邦式分布数据库系统。由于组成联邦的各个子数据库系统是相对“自治”的,这种系统可以容纳多种不同用途的、差异较大的数据库,比较适宜于大范围内数据库的集成。 分布式数据库系统(DDBS)包含分布式数据库管理系统(DDBMS和分布式数据库(DDB)。 在分布式数据库系统中,一个应用程序可以对数据库进行透明操作,数据库中的数据分别在不同的局部数据库中存储、由不同的DBMS进行管理、在不同的机器上运行、由不同的 操作系统支持、被不同的通信网络连接在一起。 一个分布式数据库在逻辑上是一个统一的整体:即在用户面前为单个逻辑数据库,在物理上则是分别存储在不同的物理节点上。一个应用程序通过网络的连接可以访问分布在不同地理位置的数据库。它的分布性表现在数据库中的数据不是存储在同一场地。更确切地讲,不存储在同一计算机的存储设备上。这就是与集中式数据库的区别。从用户的角度看,一个分布式数据库系统在逻辑上和集中式数据库系统一样,用户可以在任何一个场地执行全局应用。就好那些数据是存储在同一台计算机上,有单个数据库管理系统(DBMS)管理一样,用 户并没有什么感觉不一样。 分布式数据库中每一个数据库服务器合作地维护全局数据库的一致性。 分布式数据库系统是一个客户/ 服务器体系结构。 在系统中的每一台计算机称为结点。如果一结点具有管理数据库软件,该结点称为数据库服务器。如果一个结点为请求服务器的信息的一应用,该结点称为客户。在ORACL客户, 执行数据库应用,可存取数据信息和与用户交互。在服务器,执行ORACL软件,处理对ORACLE 数据库并发、共享数据存取。ORACL允许上述两部分在同一台计算机上,但当客户部分和 服务器部分是由网连接的不同计算机上时,更有效。 分布处理是由多台处理机分担单个任务的处理。在ORACL数据库系统中分布处理的例 子如: 客户和服务器是位于网络连接的不同计算机上。 单台计算机上有多个处理器,不同处理器分别执行客户应用。 参与分布式数据库的每一服务器是分别地独立地管理数据库,好像每一数据库不是网络化的数据库。每一个数据库独立地被管理,称为场地自治性。场地自治性有下列好处: ?系统的结点可反映公司的逻辑组织。

海量数据下分布式数据库系统的探索与研究

海量数据下分布式数据库系统的探索与研究 摘要:当前,互联网用户规模不断扩大,这些都与互联网的快速发展有关。现 在传统的数据库已经不能满足用户的需求了。随着云计算技术的飞速发展,我国 海量数据快速增长,数据量年均增速超过50%,预计到2020年,数据总量全球 占比将达到20%,成为数据量最大、数据类型最丰富的国家之一。采用分布式数 据库可以显著提高系统的可靠性和处理效率,同时也可以提高用户的访问速度和 可用性。本文主要介绍了分布式数据库的探索与研究。 关键词:海量数据;数据库系统 1.传统数据库: 1.1 层次数据库系统。 层次模型是描述实体及其与树结构关系的数据模型。在这个结构中,每种记 录类型都由一个节点表示,并且记录类型之间的关系由节点之间的一个有向直线 段表示。每个父节点可以有多个子节点,但每个子节点只能有一个父节点。这种 结构决定了采用层次模型作为数据组织方式的层次数据库系统只能处理一对多的 实体关系。 1.2 网状数据库系统。 网状模型允许一个节点同时具有多个父节点和子节点。因此,与层次模型相比,网格结构更具通用性,可以直接描述现实世界中的实体。也可以认为层次模 型是网格模型的特例。 1.3 关系数据库系统。 关系模型是一种使用二维表结构来表示实体类型及其关系的数据模型。它的 基本假设是所有数据都表示为数学关系。关系模型数据结构简单、清晰、高度独立,是目前主流的数据库数据模型。 随着电子银行和网上银行业务的创新和扩展,数据存储层缺乏良好的可扩展性,难以应对应用层的高并发数据访问。过去,银行使用小型计算机和大型存储 等高端设备来确保数据库的可用性。在可扩展性方面,主要通过增加CPU、内存、磁盘等来提高处理能力。这种集中式的体系结构使数据库逐渐成为整个系统的瓶颈,越来越不适应海量数据对计算能力的巨大需求。互联网金融给金融业带来了 新的技术和业务挑战。大数据平台和分布式数据库解决方案的高可用性、高可靠 性和可扩展性是金融业的新技术选择。它们不仅有利于提高金融行业的业务创新 能力和用户体验,而且有利于增强自身的技术储备,以满足互联网时代的市场竞争。因此,对于银行业来说,以分布式数据库解决方案来逐步替代现有关系型数 据库成为最佳选择。 2.分布式数据库的概念: 分布式数据库系统:分布式数据库由一组数据组成,这些数据物理上分布在 计算机网络的不同节点上(也称为站点),逻辑上属于同一个系统。 (1)分布性:数据库中的数据不是存储在同一个地方,更准确地说,它不是 存储在同一台计算机存储设备中,这可以与集中数据库区别开来。 (2)逻辑整体性:这些数据在逻辑上是相互连接和集成的(逻辑上就像一个 集中的数据库)。 分布式数据库的精确定义:分布式数据库由分布在计算机网络中不同计算机

分布式数据库系统的设计与优化

近年来,计算机技术的发展日新月异,借助于计算机网络而崛起的数据库技术已不断渗透到了社会生活的各个领域.分布式数据库系统是数据库技术的一种,它的产生,使在地理上、组织上分散的单位得以实现信息、数据共享,使系统的可靠性、可用性等得到了明显的改善和提高.因此,如何优化分布式数据库系统,如何更高效地实施数据库查询等问题便显得尤为重要,它关系着整个系统性能和系统效率等诸多关键因素的完善和提高.1分布式数据库的定义 分布式数据库系统的基础是集中式数据库,但是比集中式数据库具有更大的可扩展性,它适用于单位和企业的各下属、分散部门,允许将分工后的针对性较强的各部门数据存储在本地存储设备上,从而提高用户操作应用程序的反馈速度,在一定程度上降低网络通信费用. 分布式数据库系统可以分为两种:一是物理分布逻辑集中,即在物理上是分布的,在逻辑上是一个统一整体,这类数据库系统比较适用于用途单一、专业性强的中小企业或部门;二是无论在物理上或是逻辑上都是分布的,这种分布式数据库系统类型称为联邦式,此类型主要用于集成大 范围数据库,因为该系统主要由用途迥异、 差别明显的数据库组成. 分布式数据库的物理分布性主要表现在数据库中的数据分别存储在不同的地域内或主机上,而逻辑集中性主要表现在无论用户处于哪个位置或使用本局域网中的哪台主机,都可以通过应用程序对数据库进行操作,但这些数据库具体的分布位置用户并不需要知道,就如同数据库存储在本机,并且由本机的数据库管理系统进行管理.2分布式数据库系统的特点 2.1数据的独立性和分布的透明性 数据的独立性可以说是分布式数据库系统的核心和目标,而分布的透明性表现在用户在操作带有数据库的应用程序时,不必了解数据存储的具体物理位置,不必关心数据逻辑集中的区域,也不必验证本地系统支持哪些数据模型.分布透明的特点,在很大程度上增加了应用程序的可移植性. 2.2集中和自治相结合 对于分布式数据库系统来说,数据共享分为两层:局部共享和全局共享.局部共享是相对于局部数据库而言的,存储在局部数据库中的一般是专门针对本地用户的常用数据;全局共享就是说在各个分布的数据库区域,也能够支持 系统在全局上的应用,可以存储可供本网中其他位置的用户共享的数据.那么对于这两层数据共享的分类,就有相应的两种控制方式,即集中和自治,各个局部的数据库管理系统可以对本区域的数据库实施独立管理,称为自治;与此同时,为了协调各个局部数据库管理系统,为了宏观、整体地把握各局部数据库的运行情况等,系统还设置了集中控制的工作方式. 2.3易于扩展性 由于单位、 企业等的数据量越来越庞大,对于数据库服务器的需求也越来越多.如果服务器的应用程序支持水平方向的扩展,那么就可以通过多增加服务器来分担数据的处理任务. 3分布式数据库系统的设计3.1设计的原则 3.1.1分布式数据库系统的主要设计原则是本地和近地.所以,在设计的过程中,应当尽量实现数据的本地化,这样可以有效减少数据节点之间的相互通信,从而提高整个系统的效率. 3.1.2为了改善和提高数据库数据的可用性和可靠性,有时候在分布式数据库系统中可以将数据保存为副本,如果数据的其中一个副本被损坏或者不能使用,那么在网络环境中的另一个节点中可以对损坏的副本进行恢复.不过,在恢复的同时有可能增加冗余的数据,所以在设计分布式数据库系统时应当全面考虑最优的数据冗余程序,从而减少数据库更新的成本. 3.1.3在用户通过应用程序对数据库进行操作的时候,分布式数据库系统应当将总的工作量分流到网络环境中的各局域节点,从而提高了应用程序的执行效率、扩大了数据传输的并行度、充分利用了各局域节点计算机的资源.因此在设计分布式数据库系统的同时,要将负荷合理地分流. 3.1.4在设计分布式数据库系统时,要对网络各局域节点进行存储能力的统筹,对有限的存储控件进行合理的规划.3.2设计的内容 与集中式数据库的设计相类似,分布式数据库系统也包括了数据库和应用.其中,数据库的设计又包括全局的模式设计和局部的模式设计.分布式数据库系统设计的关键是 Vol.28No.10 Oct.2012 赤峰学院学报(自然科学版)JournalofChifengUniversity(NaturalScienceEdition)第28卷第10期(下) 2012年10月分布式数据库系统的设计与优化 左 翔,姜文彪 (安徽医科大学计算机系,安徽 合肥 230032) 摘要:分布式数据库是数据库技术和网络技术相结合的产物,本文从分布式数据库系统的定义和特点入手,介绍了其设计、优化的目标以及优化的方法. 关键词:分布式数据库系统;设计;优化中图分类号:TP310 文献标识码:A 文章编号:1673-260X(2012)10-0020-02 20--

分布式数据库系统复习题

一、何为分布式数据库系统?一个分布式数据库系统有哪些特点? 答案:分布式数据库系统通俗地说,是物理上分散而逻辑上集中的数据库系统。分布式数据库系统使用计算机网络将地理位置分散而管理和控制又需要不同程度集中的多个逻辑单位连接起来,共同组成一个统一的数据库系统。因此,分布式数据库系统可以看成是计算机网络与数据库系统的有机结合。一个分布式数据库系统具有如下特点: 物理分布性,即分布式数据库系统中的数据不是存储在一个站点上,而是分散存储在由计算机网络连接起来的多个站点上,而且这种分散存储对用户来说是感觉不到的。 逻辑整体性,分布式数据库系统中的数据物理上是分散在各个站点中,但这些分散的数据逻辑上却构成一个整体,它们被分布式数据库系统的所有用户共享,并由一个分布式数据库管理系统统一管理,它使得“分布”对用户来说是透明的。 站点自治性,也称为场地自治性,各站点上的数据由本地的DBMS管理,具有自治处理能力,完成本站点的应用,这是分布式数据库系统与多处理机系统的区别。 另外,由以上三个分布式数据库系统的基本特点还可以导出它的其它特点,即:数据分布透明性、集中与自治相结合的控制机制、存在适当的数据冗余度、事务管理的分布性。 二、简述分布式数据库的模式结构和各层模式的概念。 分布式数据库是多层的,国内分为四层: 全局外层:全局外模式,是全局应用的用户视图,所以也称全局试图。它为全局概念模式的子集,表示全局应用所涉及的数据库部分。 全局概念层:全局概念模式、分片模式和分配模式 全局概念模式描述分布式数据库中全局数据的逻辑结构和数据特性,与集中式数据库中的概念模式是集中式数据库的概念视图一样,全局概念模式是分布式数据库的全局概念视图。分片模式用于说明如何放置数据库的分片部分。分布式数据库可划分为许多逻辑片,定义片段、片段与概念模式之间的映射关系。分配模式是根据选定的数据分布策略,定义各片段的物理存放站点。 局部概念层:局部概念模式是全局概念模式的子集。局部内层:局部内模式 局部内模式是分布式数据库中关于物理数据库的描述,类同集中式数据库中的内模式,但其描述的内容不仅包含只局部于本站点的数据的存储描述,还包括全局数据在本站点的存储描述。 三、简述分布式数据库系统中的分布透明性,举例说明分布式数据库简单查询的 各级分布透明性问题。 分布式数据库中的分布透明性即分布独立性,指用户或用户程序使用分布式数据库如同使用集中式数据库那样,不必关心全局数据的分布情况,包括全局数据的逻辑分片情况、逻辑片段的站点位置分配情况,以及各站点上数据库的数据模型等。即全局数据的逻辑分片、片段的物理位置分配,各站点数据库的数据模型等情况对用户和用户程序透明。

分布式数据库设计报告

分布式数据库设计报告

目录 1案例背景 (1) 需求分析 (1) 2 分布式数据库设计 (2) 设计目标 (2) 总体设计目标 (2) (4)可靠性: (3) 完成方式及周期 (3) 分布式数据库架构图 (4) 物理设计施工 (5) 3 总结 (5) 4所用设备汇总 (7) 5所使用软件 (7)

成品车间分布式数据库设计 1案例背景 随着成品车间信息化程度越来越高,我们的传统集中式数据库系统的缺点逐渐体现出来主要有: 1、所有数据处理、存储集中在一台计算机上完成,一旦机器损坏或系统崩 溃数据数据很难恢复。 2、单台机器写入/查询处理能力不足,一台机器既要读取数据,又要写入数 据,遇到大批量超过单台数据库的处理能力,就会出现卡顿,在生产时 间不敢批量制造/查询数据。 3、硬件性能瓶颈,包括(硬盘、CPU、内存),使用升级硬件的方法效果有限。 4、出现故障没有备用服务器可以替代。 5、当前成品车间存在2种数据库,oracle,sql sever,交叉使用不方便管 理维护,出现问题排查困难。 6、由于数据库初期创建数据库/表比较混乱,现在对数据的统计管理需要在 两台服务器之间交叉进行,统计难度高,效率低。 需求分析 成品车间信息化程度越来越高,各个节点产生的数据量越来越大,对数据系统要求越来越高,我们所使用的传统集中式数据库已经无法从容应对越来越大的数据。 成品车间生产线数据库主要有oracle和sql server两种,分别分布在2台计算机中,柔性线、自动线、三相线交叉使用两种类型数据库,主要出现的问题有; 1、一旦其中一个数据库出现问题,那么就有很大的几率导致三条线体 的某个节点或全部节点失去数据服务,导致停线。 2、数据库出现故障,必须停线,故障修复之后才可以上线使用。

分布式数据库设计方案

1.大型分布式数据库解决方案 企业数据库的数据量很大时候,即使服务器在没有任何压力的情况下,某些复杂的查询操作都会非常缓慢,影响最终用户的体验;当数据量很大的时候,对数据库的装载与导出,备份与恢复,结构的调整,索引的调整等都会让数据库停止服务或者高负荷运转很长时间,影响数据库的可用性和易管理性。 分区表技术 让用户能够把数据分散存放到不同的物理磁盘中,提高这些磁盘的并行处理能力,达到优化查询性能的目的。但是分区表只能把数据分散到同一机器的不同磁盘中,也就是还是依赖于一个机器的硬件资源,不能从根本上解决问题。 分布式分区视图 分布式分区视图允许用户将大型表中的数据分散到不同机器的数据库上,用户不需要知道直接访问哪个基础表而是通过视图访问数据,在开发上有一定的透明性。但是并没有简化分区数据集的管理、设计。用户使用分区视图时,必须单独创建、管理每个基础表(在其中定义视图的表),而且必须单独为每个表管理数

据完整性约束,管理工作变得非常复杂。而且还有一些限制,比如不能使用自增列,不能有大数据对象。对于全局查询并不是并行计算,有时还不如不分区的响应快。 库表散列 在开发基于库表散列的数据库架构,经过数次数据库升级,最终采用按照用户进行的库表散列,但是这些都是基于自己业务逻辑进行的,没有一个通用的实现。客户在实际应用中要投入很大的研发成本,面临很大的风险。 面对海量数据库在高并发的应用环境下,仅仅靠提升服务器的硬件配置是不能从根本上解决问题的,分布式网格集群通过数据分区把数据拆分成更小的部分,分配到不同的服务器中。查询可以由多个服务器上的CPU、I/O来共同负载,通过各节点并行处理数据来提高性能;写入时,可以在多个分区数据库中并行写入,显著提升数据库的写入速度。

EMC Greenplum分布式数据库简介-v

EMC Greenplum数据库简介 Greenplum 是2002年开始成立研发团队的,核心技术团队成员来自各个顶级数据库公司和大规模并行计算公司的资深软件架构师,例如:Oracle, Teradata, Tandem, Microsoft SQL Server, Informix。 Greenplum数据库软件是业内首创的无共享、大规模并行处理(massively parallel processing (MPP))的数据库软件产品,它包含大规模并行计算技术和数据库技术最新的研发成果:包括无共享/MPP,按列存储数据库,数据库内压缩,MapReduce,永不停机扩容,多级容错等等。该数据库软件被业界认可为扩展能力最大的分析型(OLAP)数据库软件。已有500多家世界级重大客户采用该软件,例如:NYSE,NASDAQ,FINRA,AIG,AMEX,CIA,德意志银行,美国联邦储备委员会,支付宝,NTT-DoCoMo,T-Mobile,Skype,WalMart,中国联通,太平洋保险等。这些客户中大多数Greenplum数据仓库所管理的数据量都超过100TB,其中,全球最大的有6500TB,中国最大的有1000TB。每一天,全球有数亿级的用户在直接、间接用到Greenplum发明的数据库平台。 Greenplum 分布式数据仓库软件特性介绍 Greenplum数据仓库软件是业界首创将大规模并行计算技术,应用到了数据库软件领域。该类技术同样应用在Google搜索引擎的中。

Greenplum数据仓库软件功能: 无共享/MPP核心架构 Greenplum数据库软件将数据平均分布到系统的所有节点服务器上,所以节点存储每张表或表分区的部分行,所有数据加载和查询都是自动在各个节点服务器上并行运行,并且该架构支持扩展到上万个节点。 混合的存储和执行(按列或按行) Greenplum发明支持混合按列或按行存储数据,每张表或表分区可以由管理员根据应用需要,分别指定存储和压缩方式。 基于这个功能,用户可以对任何表或表分区选择按行或按列存储数据和处理方式。这些是在建表或表分区的DDL语句中配置的,只需在建表或表分区时指定: 这个功能基于Greenplum的多态维数据存储技术。

分布式数据库

分布式数据库 第一节基本概念 一,集中式数据库系统和分布式数据库系统 1.集中式数据库系统,是指数据库中的数据集中存储在一台计算机上,数据的处理也集中在一台计算机上完成。 2. 分散式数据库系统,采用了数据分散存储的办法,将数据库分成多个建立在多台计算机上,此时各个数据库的管理和应用程序是分开的并独立的,这种系统称为分散式系统。 3.分布式数据库系统,是指数据库数据存放在计算机网络上的不同场地的计算机中,每一个计算机都有自治处理能力,并完成局部应用;而每一场地也参与(至少一种)全局应用程序的执行,全局应用程序可以通过网络通信访问系统中的多个场地的数据,这样的系统,称为分布式数据库系统。 4. 分布式数据库管理系统DDBMS,是分布式数据库系统的核心,它是分布式数据库系统中的一组软件,负责分布式数据库的建立、查询、更新、复制、管理的软件。 5. 局部自治性,是指有独立处理能力并能完成局部应用。 区分一个系统是分散式还是分布式系统,就是判断系统是否支持全局。 二,分布式数据库体统的透明性 分布式数据库系统具有位置透明性和复制透明性,使用户看到的系统如同一个集中式数据库系统。

(1)位置透明性:是指用户或应用程序员应当了解分片情况,但不必了解片段的存储场地。位置透明性位于分片视图与分配视图之间。 (2)数据复制:是指数据在每个场地的重复存储。 (3)复制透明性:即用户或程序员不必关心数据库在网络中各个节点的数据复制情况,更新操作引起的波动由系统来处理。 三,分布式数据库的特点 (1)数据的分布性。分布式数据库中的数据分布在网络中的各个节点。 (2)统一性。包括数据在逻辑上的统一性和数据在管理上的统一性。 △逻辑上的统一性指的是分散在计算机网络各个节点上的数据库构成一个在逻辑上单一的数据库,呈现给用户的如同一个统一的集中式数据库。 △管理上的统一性指的是分布式数据库是由分布式数据管理系统统一管理和维护。 (3)透明性。用户在使用数据库时,与使用集中式数据库一样,无需知道其所关心的数据存放的位置,存储了几次。用户需要关心的仅仅是整 个数据库的逻辑结构 理想的分布式数据库所具有的规则和目标 (1)局部节点自治性。 (3)能继续操作。 (4)具有位置独立性(位置透明性)。 (5)分片独立性(分片透明性)。 (6)数据复制独立性(复制透明性) (7)支持分布查询处理。 (8)支持分布事务管理。 (9)具有硬件独立性。 (10)具有操作系统独立性。 (11)具有网络独立性 (12)具有DBMS独立性。

分布式数据库系统(DDBS)概述.

分布式数据库系统(DDBS概述 一个远程事务为一个事务,包含一人或多个远程语句,它所引用的全部是在同一个远程结点上.一个分布式事务中一个事务,包含一个或多个语句修改分布式数据库的两个或多个不同结点的数据. 在分布式数据库中,事务控制必须在网络上直辖市,保证数据一致性.两阶段提交机制保证参与分布式事务的全部数据库服务器是全部提交或全部回滚事务中的语句. ORACLE分布式数据库系统结构可由ORACLE数据库管理员为终端用户和应用提供位置透明性,利用视图、同义词、过程可提供ORACLE分布式数据库系统中的位置透明性. ORACLE提供两种机制实现分布式数据库中表重复的透明性:表快照提供异步的表重复;触发器实现同步的表的重复。在两种情况下,都实现了对表重复的透明性。 在单场地或分布式数据库中,所有事务都是用COMMIT或ROLLBACK语句中止。 二、分布式数据库系统的分类: (1 同构同质型DDBS:各个场地都采用同一类型的数据模型(譬如都是关系型,并且是同一型号的DBMS。 (2同构异质型DDBS:各个场地采用同一类型的数据模型,但是DBMS的型号不同,譬如DB2、ORACLE、SYBASE、SQL Server等。 (3异构型DDBS:各个场地的数据模型的型号不同,甚至类型也不同。随着计算机网络技术的发展,异种机联网问题已经得到较好的解决,此时依靠异构型DDBS就能存取全网中各种异构局部库中的数据。 三、分布式数据库系统主要特点: DDBS的基本特点: (1物理分布性:数据不是存储在一个场地上,而是存储在计算机网络的多个场地上。 逻辑整体性:数据物理分布在各个场地,但逻辑上是一个整体,它们被所有用户(全局用户共享,并由一个DDBMS统一管理。 (2场地自治性:各场地上的数据由本地的DBMS管理,具有自治处理能力,完成本场地的应用(局部应用。 (3场地之间协作性:各场地虽然具有高度的自治性,但是又相互协作构成一个整体。 DDBS的其他特点 (1数据独立性 (2集中与自治相结合的控制机制 (3适当增加数据冗余度

分布式数据库系统(1)

分布式数据库系统(1) 胡经国 本文作者的话 本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢! 下面是正文 一、分布式数据库系统概述 1、概述一 分布式数据库(Distributed Database,DDB)是指数据分散存储在计算机网络中的各台计算机上的数据库。 分布式数据库系统(Distributed Database System,DDBS)通常使用较小的计算机系统,每台计算机可单独放在一个地方;每台计算机中都可能有DBMS (数据库管理系统)的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库;位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的、逻辑上集中、物理上分布的大型数据库系统。 2、概述二 分布式数据库,是指利用高速计算机网络,将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。 分布式数据库的基本思想,是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。 近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展。传统的关系型数据库开始从集中式模型向分布式架构发展。基于关系型的分布式数据库,在保留传统数据库的数据模型和基本特征前提下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。 另一方面,随着数据量越来越大,关系型数据库开始暴露出一些难以克服的缺点。以NoSQL为代表的、具有高可扩展性、高并发性等优势的非关系型数据库快速发展;一时间市场上出现了大量的key-value(键-值)存储系统、文档型数据库等NoSQL数据库产品。NoSQL类型数据库正日渐成为大数据时代下分布式数据库领域的主力。 这种按分布式组织数据库的方法克服了物理中心数据库组织的弱点。

(最新整理)分布式数据库研究现状及发展趋势

(完整)分布式数据库研究现状及发展趋势 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)分布式数据库研究现状及发展趋势)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)分布式数据库研究现状及发展趋势的全部内容。

山西大学研究生学位课程论文(2014 —--— 2015 学年第 2 学期) 学院(中心、所):计算机与信息技术学院 专业名称:计算机应用技术 课程名称:分布式数据库技术 论文题目:分布式数据库研究现状及发展趋势授课教师(职称): 曹峰() 研究生姓名: 刘杰飞 年级: 2014级 学号: 201422403003 成绩: 评阅日期: 山西大学研究生学院 2015年 6 月 17日

分布式数据库研究现状及发展趋势 摘要随着大数据、云时代的到来,数据库应用需求的拓展和计算机硬件环境的变化,特别是计算机网络与数字通信技术的飞速发展,卫星通信、蜂窝通信、计算机局域网、广域网和激增的Intranet及Internet得到了广泛应用,使分布式数据库系统应运而生。为了符合当今信息系统的应用需求和企业组织的管理思想和管理模式。分布式数据库提供了解决整个信息资产被分裂所成的信息孤岛,为孤岛联系在一起提供桥梁.本文主要介绍分布式数据库的研究现状,存在的一些问题以及未来的发展趋势。 关键词分布式数据库;发展趋势;现状及问题 1.引言 随着信息技术的飞速发展,社会经济结构、生产方式和消费结构已经发生了重大变化,这些变化深刻地影响着人民生活的方方面面。尤其是近十年来人们对计算机的依赖性越来越强,同时也对计算机提出了更高的要求。随着数据库在各个行业中的不断发展,各行业也对数据库提出了更高的要求,数据量也急剧增加,同时有关大数据分析的讨论正在愈演愈烈.甚至出现了爆炸性增长的趋势,一方面是由于移动互联网和移动智能终端的普及发展,数据信息正以每年40%的速度增长,造成数据量庞大;同时,数据种类呈多样性,文本、图片、视频等结构化和非结构化数据共存;另一方面也要求实时交互性强;最重要的是大数据蕴含了巨大的商业价值。相应的对于管理这些数据的复杂度也随之增加。同时各行业部门或企业所使用的软硬件之间的差异,这给开发企业管理数据库管理软件带来了巨大的工作量,如果能够有效解决这个问题,即使用同一模块管理操作不同的数据表格,对不同的数据表格进行查询、插入、删除、修改等操作,也即对企业简单的应用实现即插即用的功能,那么就能大大地减少软件开发的维护和更新费用,缩短软件的开发周期。分布式数据库系统的开发,降低了企业开发的成本,提高了软件使用的回报率。当今社会已进入了信息时代,人们将越来越多的信息存储在网络中的计算机上。如何更有

分布式数据库系统知识点及习题

第9章分布式数据库系统 9.1 基本内容分析 9.1.1 本章重要概念 (1)分布计算的三种形式:处理分布,数据分布,功能分布。 (2)C/S系统,工作模式,技术特征,体系结构,两层、三层、多层C/S结构。 (3)DDBS的定义、特点、优点、缺点和分类;分布式数据存储的两种形式(分片和分配)。 (4)DDB的体系结构:六层模式,分布透明性的三个层次,DDBS的组成,DDBMS的功能和组成。 (5)分布式查询处理的查询代价,基于半联接的优化策略,基于联接的优化策略。 (6)分布式数据库的并发控制和恢复中出现的问题,以及处理机制。 9.1.2 本章的重点篇幅 (1)两层、三层、多层C/S结构。(教材P365-367) (2)分布式数据存储:分片和分配。(教材P375-377) (3)DDB的体系结构。(教材P378的图9.10,P381的图9.12) (4)基于半联接的执行示意图。(教材P389的图9.17) 9.2 教材中习题9的解答 9.1 名词解释 ·集中计算:单点数据和单点处理的方式称为集中计算。 ·分布计算:随着计算机网络技术的发展,突破集中计算框架,DBMS的运行环境逐渐从单机扩展到网络,对数据的处理从集中式走向分布式、从封闭式走向开放式。这种计算环境称为分布计算。 ·处理分布:指系统中处理是分布的,数据是集中的这种情况。 ·数据分布:指系统中数据是分布的,但逻辑上是一个整体这种情况。 ·功能分布:将计算机功能分布在不同计算机上执行,譬如把DBMS功能放在服务器上执行,把应用处理功能放在客户机上执行。 ·服务器位置透明性:指C/S系统向客户提供服务器位置透明性服务,用户

分布式数据库系统

分布式数据库系统 分布式数据库系统有两种:一种是物理上分布的,但逻辑上却是集中的。这种分布式数据库只适宜用途比较单一的、不大的单位或部门。另一种分布式数据库系统在物理上和逻辑上都是分布的,也就是所谓联邦式分布数据库系统。由于组成联邦的各个子数据库系统是相对“自治”的,这种系统可以容纳多种不同用途的、差异较大的数据库,比较适宜于大范围内数据库的集成。 ----- ---- 分布式数据库系统(DDBS)包含分布式数据库管理系统(DDBMS)和分布式数据库(DDB)。在分布式数据库系统中,一个应用程序可以对数据库进行透明操作,数据库中的数据分别在不同的局部数据库中存储、由不同的DBMS进行管理、在不同的机器上运行、由不同的操作系统支持、被不同的通信网络连接在一起。 一个分布式数据库在逻辑上是一个统一的整体,在物理上则是分别存储在不同的物理节点上。一个应用程序通过网络的连接可以访问分布在不同地理位置的数据库。它的分布性表现在数据库中的数据不是存储在同一场地。更确切地讲,不存储在同一计算机的存储设备上。这就是与集中式数据库的区别。从用户的角度看,一个分布式数据库系统在逻辑上和集中式数据库系统一样,用户可以在任何一个场地执行全局应用。就好那些数据是存储在同一台计算机上,有单个数据库管理系统(DBMS)管理一样,用户并没有什么感觉不一样。 分布式数据库系统是在集中式数据库系统的基础上发展起来的,是计算机技术和网络技术结合的产物。分布式数据库系统适合于单位分散的部门,允许各个部门将其常用的数据存储在本地,实施就地存放本地使用,从而提高响应速度,降低通信费用。分布式数据库系统与集中式数据库系统相比具有可扩展性,通过增加适当的数据冗余,提高系统的可靠性。在集中式数据库中,尽量减少冗余度是系统目标之一.其原因是,冗余数据浪费存储空间,而且容易造成各副本之间的不一致性.而为了保证数据的一致性,系统要付出一定的维护代价.减少冗余度的目标是用数据共享来达到的。而在分布式数据库中却希望增加冗余数据,在不同的场地存储同一数据的多个副本,其原因是:①.提高系统的可靠性、可用性当某一场地出现故障时,系统可以对另一场地上的相同副本进行操作,不会因一处故障而造成整个系统的瘫痪。②.提高系统性能系统可以根据距离选择离用户最近的数据副本进行操作,减少通信代价,改善整个系统的性能。 分布式数据库具有以下几个特点: (1)、数据独立性与位置透明性。数据独立性是数据库方法追求的主要目标之一,分布透明性指用户不必关心数据的逻辑分区,不必关心数据物理位置分布的细节,也不必关心重复副本(冗余数据)的一致性问题,同时也不必关心局部场地上数据库支持哪种数据模型.分布透明性的优点是很明显的.有了分布透明性,用户的应用程序书写起来就如同数据没有分布一样.当数据从一个场地移到另一个场地时不必改写应用程序.当增加某些数据的重复副本时也不必改写应用程序.数据分布的信息由系统存储在数据字典中.用户对非本地数据的访问请求由系统根据数据字典予以解释、转换、传送. (2)、集中和节点自治相结合。数据库是用户共享的资源.在集中式数据库中,为了保证数据库的安全性和完整性,对共享数据库的控制是集中的,并设有DBA负责监督和维护系统的正常运行.在分布式数据库中,数据的共享有两个层次:一是局部共享,即在局部数据库中存储局部场地上各用户的共享数据.这些数据是本场地用户常用的.二是全局共享,即在分布式数据库的各个场地也存储可供网中其它场地的用户共享的数据,支持系统中的全局应用.因此,相应的控制结构也具有两个层次:集中和自治.分布式数据库系统常常采用集中和自治相结合的控制结构,各局部的DBMS可以独立地管理局部数据库,具有自治的功能.同时,系统又设有集中控制机制,协调各局部DBMS 的工作,执行全局应用。当然,不同的系统集中和自治的程度不尽相同.有些系统高度自治,连全局

分布式数据库总结(申德荣)

第一章分布式数据库系统概述 一、分布式数据库的发展 1、分布式数据库的发展: ①集中式数据库管理系统的局限性:a.通讯瓶颈;b.响应速度。 ②推动分布式数据库发展的动力:a.应用需求;b.硬件环境的发展。 二、分布式数据库系统的定义: 分布式数据库系统,通俗地说,是物理上分散而逻辑上集中的数据库系统。分布式数据库系统使用计算机网络将地理位置分散而管理和控制又需要不同程度集中的多个逻辑单位(通常是集中是数据库系统)连接起来,共同组成一个统一的数据库系统。 三、分布式数据库系统的特点: a.物理分布性:数据不是存放在一个站点上 b.逻辑整体性:是与分散式数据库系统的区别 c.站点自治性:是与多处理机系统的区别 d.数据分布透明性 e.集中与自治相结合的控制机制 f.存在适当的数据冗余度 g.事务管理的分布性 四、分布式数据库系统的分类 按局部数据库管理系统的数据模型分类:同构性(homogeneous)(分为同构同质型和同构异质型)DDBS和异构性(heterogeneous)DDBS 按分布式数据库系统的全局控制系统类型分类:全局控制集中型DDBS,全局控制分散型DDBS,全局控制可变型DDBS。

五、分布式数据库中数据的独立性和分布透明性 所谓数据独立性是指用户或用户程序使用分布式数据库如同使用集中式数据库那样,不必关心全局数据的分布情况,包括全局数据的逻辑分片情况、逻辑片段站点位置的分配情况,以及各站点上数据库的数据模型等。也就是说,全局数据的逻辑分片、片段的物理位置分配,各站点数据库的数据模型等情况对用户和用户程序透明。所以,在分布式数据库中分布独立性也称为分布透明性。 六、分布式数据库系统的体系结构、组成成分 集中式数据库管理系统结构: a. DB(数据库) b. DBMS(集中式数据库管理系统) c. DBA(数据库管理员) 分布式数据库管理系统(DDBMS)结构: a. LDB(局部数据库) b. GDB(全局数据库) c. LDBMS (局部数据库管理系统) d. GDBMS (全局数据库管理系统) e. LDBA(局部数据库管理员) f. GDBA (全局数据库管理员) 七、分布式数据库系统的特性: 1. 数据透明性:a.分布透明性b. 分片透明性c. 复制透明性 2. 场地自治性:a. 设计自治性b. 通信自治性c. 执行自治性 八、分布式数据库系统的优点: 分布式数据库系统是在集中式数据库系统的基础上发展来的,比较分布式数据库系统与集中式数据库系统,可以发现分布是数据库系统具有下列优点: 1.更适合分布式的管理与控制。分布式数据库系统的结构更适合具有地理分布特性的组织或机构使用,允许分布在不同区域、不同级别的各个部门对其自身的数据实行局部控制。例如:实现全局数据在本地录入、查询、维护,这时由于计算机资源靠近用户,可以降低通信代价,提高响应速度,而涉及其他场地数据库中的数据只是少量的,从而可以大大减少网络上的信息传输量;同时,局部数据的安全性也可以做得更好。

分布式数据库系统其应用(徐俊刚 第三版)重点课后习题

第一章 1.1 采用分布式数据库系统的主要原因是什么? 集中式数据库系统的不足:1.数据按实际需要已经在网络上分布存储,如果再采用集中式处理,势必造成附加成本和通信开销,2,。应用程序集中在一台计算机上运行,一旦该计算机发生故障,将会影响整个系统的运行,可靠性不高。3集中式处理导致系统的规模和配置都不够灵活,系统的可扩展性较差。 1.2 分布式数据库系统有哪几种分类方法?这些方法是如何分类的? 1.按局部数据库管理系统的数据模型的类型分类。 (1)同构型:同构同质型:各个站点上的数据库的数据模型都是同一类型的,而且是同一种DBMS。 同构异质型:各个站点上的数据库的数据模型都是同一类型的,但不是同一种DBMS。 (2)异构型:各个站点上的数据库的数据模型各不相同。 2.按分布式数据库系统全局控制系统类型分类 (1)全局控制集中型DDBS (2)全局控制分散型DDBS (3)全局控制可变型DDBS 1.3 什么是分布式数据库系统?它具有那些主要特点?怎样区分分布式数据库系统与只提供远程数据访问的网络数据库系统? 分布式数据库系统是物理上分散而逻辑上集中的数据库系统,其可以看成是计算机网络和数据库系统的有机结合。 基本特点:物理分布性、逻辑整体性、站点自治性。 导出特点:数据分布透明性、集中与自治相结合的机制、存在适当的数据冗余度、事务管理的分布性。 区分:分布式数据库的分布性是透明的,用户感觉不到远程与本地结合的接缝的存在。 1.6分布式DBMS具有哪些集中式DBMS不具备的功能? 数据跟踪,分布式查询处理,分布式事务管理,复制数据管理,安全性,分布式目录管理 1.14分布式数据库系统的主要优点是什么?存在哪些技术问题? 分布式数据库系统优点:良好地可靠性和可用性;提高系统效率,降低通信成本;较大的灵活性和可伸缩性;经济型和保护投资;适应组织的分布式管理和控制;数据分布式具有透明性和站点具有较好的自治性;提高了资源利用率;实现了数据共享。

分布式数据库系统(全文)

分布式数据库系统(全文) 胡经国 本文作者的话 本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。以此作为云计算学习笔录,供云计算业外读者进一步学习和研究参考。希望能够得到大家的指教和喜欢! 下面是正文 一、分布式数据库系统概述 1、概述一 分布式数据库(Distributed Database,DDB)是指数据分散存储在计算机网络中的各台计算机上的数据库。 分布式数据库系统(Distributed Database System,DDBS)通常使用较小的计算机系统,每台计算机可单独放在一个地方;每台计算机中都可能有DBMS (数据库管理系统)的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库;位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的、逻辑上集中、物理上分布的大型数据库系统。 2、概述二 分布式数据库,是指利用高速计算机网络,将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。 分布式数据库的基本思想,是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。 近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展。传统的关系型数据库开始从集中式模型向分布式架构发展。基于关系型的分布式数据库,在保留传统数据库的数据模型和基本特征前提下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。 另一方面,随着数据量越来越大,关系型数据库开始暴露出一些难以克服的缺点。以NoSQL为代表的、具有高可扩展性、高并发性等优势的非关系型数据库快速发展;一时间市场上出现了大量的key-value(键-值)存储系统、文档型数据库等NoSQL数据库产品。NoSQL类型数据库正日渐成为大数据时代下分布式数据库领域的主力。 这种按分布式组织数据库的方法克服了物理中心数据库组织的弱点。

Google分布式数据库简介.

Google Spanner简介 Spanner 是Google的全球级的分布式数据库 (Globally-Distributed Database) 。Spanner的扩展性达到了令人咋舌的全球级,可以扩展到数百万的机器,数已百计的数据中心,上万亿的行。更给力的是,除了夸张的扩展性之外,他还能同时通过同步复制和多版本来满足外部一致性,可用性也是很好的。冲破CAP的枷锁,在三者之间完美平衡。 Spanner是个可扩展,多版本,全球分布式还支持同步复制的数据库。他是Google的第一个可以全球扩展并且支持外部一致的事务。Spanner能做到这些,离不开一个用GPS和原子钟实现的时间API。这个API能将数据中心之间的时间同步精确到10ms以内。因此有几个给力的功能:无锁读事务,原子schema修改,读历史数据无block。 EMC中国研究院实时紧盯业界动态,Google最近发布的一篇论文《Spanner: Google’s Globally-Distributed Database》, 笔者非常感兴趣,对Spanner进行了一些调研,并在这里分享。由于Spanner 并不是开源产品,笔者的知识主要来源于Google的公开资料,通过现有公开资料仅仅只能窥得Spanner 的沧海一粟,Spanner背后还依赖有大量Google的专有技术。 下文主要是Spanner的背景,设计和并发控制。 Spanner背景

要搞清楚Spanner原理,先得了解Spanner在Google的定位。 从上图可以看到。Spanner位于F1和GFS之间,承上启下。所以先提一提F1和GFS。 F1 和众多互联网公司一样,在早期Google大量使用了Mysql。Mysql是单机的,可以用Master-Slave来容错,分区来扩展。但是需要大量的手工运维工作,有很多的限制。因此Google开发了一个可容错可扩展的RDBMS——F1。和一般的分布式数据库不同,F1对应RDMS应有的功能,毫不妥协。起初F1是基于Mysql的,不过会逐渐迁移到Spanner。 F1有如下特点: · 7×24高可用。哪怕某一个数据中心停止运转,仍然可用。 ·可以同时提供强一致性和弱一致。 ·可扩展 ·支持SQL ·事务提交延迟50-100ms,读延迟5-10ms,高吞吐 众所周知Google BigTable是重要的NoSql产品,提供很好的扩展性,开源世界有HBase与之对应。为什么Google还需要F1,而不是都使用 BigTable呢?因为BigTable提供的最终一致性,一些需要事务级

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