distributed database

29
Distributed Database 张张张

Upload: molimo

Post on 12-Jan-2016

76 views

Category:

Documents


0 download

DESCRIPTION

Distributed Database. 张惠彦. Declaration. 本次课的主要目的是简要地介绍一下分布式数据库的相关知识,给大家一个今后继续深入学习的起点。 对分布式数据库特别感兴趣的同学,可参阅: 《 分布式数据库系统原理 》 (第二版) M.Tamer Ozsu, Patrick Valduricz 清华大学出版社. Development Of DataBase. 集中式. 分散式. 分布式. Development Of DataBase. 集中式数据库. Traditional File Processing. 集中式数据库. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Distributed Database

Distributed Database 张惠彦

Page 2: Distributed Database

Declaration

本次课的主要目的是简要地介绍一下分布式数据库的相关知识,给大家一个今后继续深入学习的起点。

对分布式数据库特别感兴趣的同学,可参阅: 《分布式数据库系统原理》(第二版) M.Tamer Ozsu, Patrick Valduricz 清华大学出版社

Page 3: Distributed Database

Development Of DataBase

Development Of DataBase

集中式 分散式 分布式

Page 4: Distributed Database

集中式数据库Traditional File Processing

Page 5: Distributed Database

集中式数据库Database Processing

Page 6: Distributed Database

分散式数据库 随着数据库应用的不断发展,规模的不断扩大,

逐渐感觉到集中式系统也有不便之处。 大型 DBS 的设计和操作都比较复杂,系统显

得不灵活并且安全性也较差。 采用将数据分散的方法,把数据库分成多个,

建立在多台计算机上,这种系统称为分散式系统。

在这种系统中,数据库的管理、应用程序的研制等都是分开并相互独立,它们之间不存在数据通信联系。

Page 7: Distributed Database

分布式数据库 由于计算机网络通信的发展,有可能把分散在

各处的数据库系统通过网络通信连接起来,这样形成的系统称为分布式数据库系统( DDBS )。

DDBS 兼有集中式和分散式的优点。 这种系统有多台计算机组成,各计算机之间由

通信网络相互连系着。

Page 8: Distributed Database

分布式数据库 随着传统的数据库技术日趋成熟、计算机网络

技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上。这时集中式数据库系统表现出它的不足: 数据按实际需要已在网络上分布存储,再采用集中式处理,势必造成通信开销大;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统受到影响,可靠性不高;集中式处理引起系统的规模和配置都不够灵活,系统的可扩充性差。

Page 9: Distributed Database

分布式数据库

分布式数据库是数据库技术与网络技术相结合的产物

Page 10: Distributed Database

分布式数据库A distributed database (DDBS): A collection of multiple, logically interrelated

databases distributed over a computer network.

A distributed database management system (D-DBMS): The software system that permits the

management of the DDBS and makes the distribution transparent to the users.

A distributed database system (DDBS): DDBS = DDB + D-DBMS

Page 11: Distributed Database

分布式数据库分布式数据库管理系统 (DDBMS) 是由一个被分为多段的逻辑数据库构成的。每段在独立的 DDAMS 的控制下,可以存储在一个或多个通过通信网络互连起来的计算机上。每个节点都可以独立地处理用户访问本地数据的请求(即每个节点都有一定的本地自主性),并且也可以处理网络上其他计算机中存储的数据。用户是通过应用来访问分布式数据库的。应用又可分为不需要从其他节点获得数据的应用(本地应用)。

和确实需要从其他节点获得数据的应用(全局应用)。一般要求 DDBMS至少包含一个全局应用。

Page 12: Distributed Database

分布式数据库DDBMS

Page 13: Distributed Database

分布式数据库Distributed Database ( User View )Distributed Database ( User View )

Page 14: Distributed Database

分布式数据库Distributed DBMS (Reality)Distributed DBMS (Reality)

Page 15: Distributed Database

分布式数据库 vs 分布式处理

分布式处理:一个可以通过计算机网络来访问的集中式数据库。

Page 16: Distributed Database

分布式数据库 vs 并行 DBMS

并行 DBMS:运行在多个处理器和磁盘上的 DBMS, 可用来尽可能地并行执行多个操作,目的在于提高性能。

并行 DBMS 的三种主要体系结构:共享存储器共享磁盘无共享

Page 17: Distributed Database

分布式数据库 vs 并行 DBMS

共享存储器

Page 18: Distributed Database

分布式数据库 vs 并行 DBMS

共享磁盘

Page 19: Distributed Database

分布式数据库 vs 并行 DBMS

无共享

Page 20: Distributed Database

分布式数据库的分类DDBMS 可以分为:

同构 DDBMS 异构 DDBMS

同构系统中,所有的节点使用的相同的 DBMS产品。

异构系统中,不同节点可能使用不同的 DBMS产品,而这些产品不必基于同一底层数据模型。

因此,在异构系统中可能包含关系型、网络性、层次型和面向对象型等多种类型的数据库。

Page 21: Distributed Database

分布式数据库的体系结构全局外部级 全局外模式 …… 全局外模式

全局概念级 全局概念模式

分片级 分片模式 …… 分片模式 分片模式

分配级 分配模式

分配模式

分配模式……

局部内部级

局部概念级 局部概念模式

局部内模式

局部概念模式 局部概念模式

局部内模式 局部内模式

局部数据库

局部数据库

局部数据库

映象1

分布式数据库增加部分

集中式数据库原有部分

映象2

映象3

映象5

映象4

Page 22: Distributed Database

分布式数据库的分布透明性分布透明性

集中式DB原有的结构

分布式DB增加的结构

集中式DB原有的结构

分布式DB增加的结构

数据库

局部内模式

局部概念模式

分配模式

分片模式

全局概念模式

全局外模式

用户(全局应用)

数据库

局部内模式

局部概念模式

分配模式

分片模式

全局概念模式

全局外模式

用户(全局应用)

映象5:(物理数据独立性)

映象4:局部数据模型透明性

映象3:位置透明性

映象2:分片透明性

映象1:(逻辑数据独立性)

映象5:(物理数据独立性)

映象4:局部数据模型透明性

映象3:位置透明性

映象2:分片透明性

映象1:(逻辑数据独立性)

Page 23: Distributed Database

DDBS 的组成框架全局用户

GDD GDB

局部用户

全局用户局部用户

计算机

GDBMS

LDBMS

计算机

GDBMS

LDBMS

计算机

LDBMS

GDBMS

LDD LDB

LDD LDB GDD GDB

网络

全局用户

GDD GDB

局部用户

LDD LDB

Page 24: Distributed Database

分布式数据库查询① 接受用户请求,并判定把它送到哪里,或必须访问哪些计算机才能满足该要求。

② 访问网络数据字典,了解如何请求和使用其中的信息。

③ 如果目标数据存储于系统的多个计算机上,就必须进行分布式处理。

④ 通信接口功能。在用户、局部 DBMS 和其他计算机的 DBMS 之间进行协调。

⑤ 在一个异构型分布式处理环境中,还需提供数据和进程移植的支持。这里的异构型是指各个场地的硬件、软件之间存在着差别。

Page 25: Distributed Database

分布式数据库查询用户查询

查询分析

优化算法

完整性处理模块

调度处理模块LDBMS

计算机

可靠性处理模块

DB

系统DD

网络

查询处理模块

分布策略

错误

对网络的监视信息数据

局部处理命令

数据定位

实际的数据

需要的数据

Page 26: Distributed Database

小结 :分布式 DBMS 集中式 DBMS

① 存取方式用户→ DDBMS→ 分布式网络 OS→

网络通信→局部 DBMS→ 局部 OS→DB

用户→ DBMS→OS→DB

② 数据冗余性 有控制的冗余 最小的冗余③ 数据表示级

别(四级)用户试图,全局视图,分片

视图,分配视图(三级)外部视图,概念视

图,内部视图④ 数据存放方

式复制在多个场地,模式分散化,处理

程序也分散化 集中在一个地点

⑤DBA分布在各场地,进行局部控制 集中在一起

⑥ 同步 由全局 DBMS 和网络 OS 组成 由 OS 完成

⑦ 封锁 分散控制 集中控制⑧ 实际资源 多个 CPU ,多个 DBMS 一个 CPU ,一个 DBMS⑨ 操作方式 当前方式,响应方式两种 一种方式(当前方式)

⑩ 数据一致性 所有主场地的逻辑结果是一致的,

但各个场地的复制中数据可能不一致

任何时候都需要保持数据的一致性

Page 27: Distributed Database

DDBMS 的优缺点

优点:1. 反映了组织结构2. 改进了共享性和本地自主性3. 改进了可用性4. 提高了可靠性5. 改进了性能6. 节约成本7. 模块化增长

Page 28: Distributed Database

DDBMS 的优缺点

缺点:1. 复杂性高2. 成本高3. 安全性低4. 更能控制的完整性5. 缺乏标准6. 缺乏经验7. 数据库设计更加复杂

Page 29: Distributed Database

本次课我们探讨到这里。

中间有不足与欠缺之处 欢迎指正,共同讨论。 谢谢大家!