分布式数据库系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

WWW 浏览器
WWW 服务器
DB服 务器
DB
3.多层C/S结构
WW
WW

DB
W
W



浏览
服务

务器
DB



4.网络服务器的类型
① DB服务器 ② 文件服务器 ③ 事务服务器 ④ 文档服务器 ⑤ Web服务器 ⑥ 电子邮件服务器 ⑦ 其他应用服务器
Java JavaScript ActiveX VBScript
7.数据库访问中间件
尽管有了标准SQL,但是一个个特定的前端应用程 序仍然无法访问不同DBMS中的数据,这主要是由于 以下两个原因决定:
(1)各个厂商的SQL版本不同。他们对标准SQL进行了 独特的扩充或解释,导致不同的RDBMS提供的SQL互 不 兼 容 ( 例 : SQL SERVER 使 用 的 是 T—SQL , ORACLE使用的是PL/SQL)。
客户机的任务
管理用户界面 接受用户数据 处理应用逻辑 生成数据库请求 向服务器发数据库请求 从服务器接受结果 格式化结果
服务器的任务
接受来自客户机的数据库请求 处理对数据库的请求 格式化结果并传给客户机 进行完整性检查 维护数据字典、索引 处理数据恢复 优化查询/更新处理
2.2 C/S环境下应用成分的分布
14.1 集中计算与分布计算(一)
集中式DB的结构图
存取请求
处理结果
用户



DB

通信线路
14.1 集中计算与分布计算(二)
• “分布计算”概念 ① 处理分布 ② 数据分布 ③ 功能分布
1 “分布计算”概念
1、处理分布 处理分布,数据集中。网络中各个节点上用
户的应用程序向同一个DB存取数据,然后在 各自节点的计算机上进行应用的处理。它仍属 于集中式DB范畴,只是用户计算机(相当于 智能终端)上具有应用处理的能力,且增加了 网络接口,可在网络下运行。
(2)各个厂商的RDBMS在客户端和服务器之间的通信 协议不同。C/S结构是数据库系统最常用的结构,而标
准SQL仅仅只对语言方面进行了规定,对于客户端和服务器之 间的通信没有进行规定。 为了降低应用程序与数据库管理系统的耦合性,提供应用 系统的可移植性和可扩展性,有必要建立一个公共的、网 络透明、与具体数据库无关的应用程序调用接口,这就形 成了数据库访问中间件。
典型的数据库访问中间件有“开放数据库互连” (ODBC)、“JAVA数据库互连”(JDBC)。
(1)ODBC ODBC技术为应用程序提供了一套调用层接口函数库和基 于动态链接库的运行支持环境。应用程序调用标准的 ODBC函数和SQL语句,通过可加载的驱动程序将逻辑结 构映射到具体的DBMS系统。使用ODBC API几乎可以将 所有平台上的关系数据库连接起来。
三层结构中,服务器端分为两个部分:应用服务器(包 括从客户端划分出一部分应用和从专用服务器中划分出一 部分工作)和DB服务器。
三层结构的思想是:
①使客户机变“瘦”,即进一步变小,客户端只安装浏览器 就可以访问应用程序
②并不是使服务变“肥”,而是增加服务器的品种,容易组 装。
三层结构的功能层次如下: ① 表示层:负责显示和与用户交互(由客户机实现)。 ② 功能层:实现应用逻辑(由应用服务器实现)。
2、数据分布
数据分布在计算机网络的不同节点上,而这 些数据在逻辑上是一个整体,构成一个逻辑数 据库。网络中的每一个节点可以执行局部应用, 即具有独立处理本地数据库中数据的能力;也 可以执行全局应用,可以存取和处理异地数据 库中数据。这就是分布式数据库的概念。(分 布式数据库技术是数据库技术与网络技术有机 结合)
使用数据库访问中间件,用户可以获得多方面的好处:
(1)它消除了数据库平台(软、硬件)的差异,从而可以让 用户将更多的精力集中在系统功能设计上,所得到的应用 软件也易于移植和升级。
(2)它能提供客户机和服务器之间的多种功能,如:访问优 化、分布式访问管理等。
(3)它具有安全性机制,保证数据在不可靠的网络中安全的 传输,防止企业信息在网络传输过程中泄密。
一个典型的应用程序可分解成四个组成成分。 1、用户界面的显示逻辑:这是与用户交互的应用代
码。它完成屏幕格式化、屏幕信息读写、窗口管 理、键盘及鼠标管理等任务。最流行的形式是各 种图形用户界面。 2、应用逻辑:这是根据输入数据来完成业务处理和 规则的应用代码。用3GL或4GL编写。
3、事务逻辑:这是应用程序中DML语句编写的 代码,在RDBMS中一般是用SQL编写。
数据源可以分为三类: 第一类是用户数据源,只有创建者才能使用,并且只能在
所定义的机器上运行。任何用户都不能使用其它用户 创建的用户数据源。 第二类是系统数据源,所有用户和在WIN NT下以服务方 式运行的应用程序均可使用客观存在。 第三类是文件数据源,是ODBC3.0以上版本增加的一种 数据源,将用户定义数据源信息保存到一个文件中, 并可被不同机器上安装了相同驱动程序的用户共享。 可用于企业用户。
2.1 C/S结构的工作模式 C/S结构的基本原则是将计算机应用任务分
解成多个子任务,由多台计算机分工完成。即 “功能分布”原则。客户端完成数据处理、数 据表示、用户接口等功能;服务器完成DBMS 的核心功能。这种客户请求服务、服务器提供 服务的处理方式是一新型的计算机应用模式。
C/S结构的工作模式
(5)分布式查询处理的查询代价,基于半联接 的优化策略,基于联接的优化策略。
(6)分布式数据库的并发控制和恢复中出现的 问题,以及处理机制。
引言
随着传统的数据库技术日趋成熟、计算机网络技术的飞 速发展和应用范围的扩充,数据库应用已经普遍建立于计算 机网络之上。
集中式数据库系统表现出它的不足:
1、数据按实际需要已在网络上分布存储,再采用集中式 处理,势必造成通信开销大;
2、应用程序集中在一台计算机上运行,一旦该计算机发生 故障,则整个系统受到影响,可靠性不高;
3、集中式处理引起系统的规模和配置都不够灵活,系统的 可扩充性差。
在这种形势下,集中式DB的“集中计算”概念向“分布 计算”概念发展。分布计算主要体现在客户机/服务器模式 和分布式数据库体系结构两个方面。本章将分别介绍这两种 技术。
第十四章 分布式数据库系统
本章重要概念
(1)分布计算的三种形式: 处理分布,数据分布,功能分布。
(2)C/S系统,工作模式,技术特征 体系结构:两层、三层、多层C/S结构。
(3)DDBS的定义、特点、优点、缺点和分类; 分布式数据存储的两种形式(分片和分配)。
本章重要概念
(4)DDB的体系结构:六层模式,分布透明性 的三个层次,DDBS的组成,DDBMS的功能和 组成。
本章的重点
(1)两层、三层、多层C/S结构。 (2)分布式数据存储:分片和分配。 (3)DDB的体系结构。 (4)基于半联接查询优化
早期的DBS是主从式(主机/终端式)系统,是一 种集中式DB体系结构。其主要特点是DBMS软件、所 有用户的数据和应用程序都存储在一个中心计算机 (称之为主机)上,通常是大型机。用户仅能通过 终端发出存取数据的请求,由通信线路传输给主机, 主机响应并处理之后,再将处理结果通过通信线路 返回给用户终端。
3、功能分布
在分布式数据库系统中,网络上每个节点都是 一个通用计算机,既执行分布式DBMS,又执行 应用程序。随着工作站功能的增强和广泛使用, 为了解决计算机的瓶颈问题,需要把DBMS功能 和应用处理功能分开。网络中一些节点上的计算 机专门用于执行DBMS功能,称为DB服务器(DB Server)。
(3) 如果URL指向HTML文档,则Web服务器使用HTTP
协议把该文档直接送给浏览器。在HTML文档中可能包 含 有 JavaScript 和 VBScript 等 脚 本 程 序 段 , 随 HTML 文 档一起下载的还可能有Java Applet 和ActiveX等小程序。 如果HTML文档中嵌入了CGI和ASP程序,则由Web服 务器运行这些程序,把结果送到浏览器。
③ 数据层:负责数据管理(由DB服务器实现)。
用户
客户机1
用户
客户机N
第一层
应用服 务器
第二层
DB服务
DB
第三层
Web上的数据库应用是典型的三层C/S结构(称为B/S) 下图所示的是WWW的三层C/S结构: 表示层:由WWW浏览器实现。 功能层:由Web服务器实现。 数据层:由DB服务器实现。
用户
一个数据库访问中间件的实现需要满足三个透明性的要求: 网络透明性:能支持所有类型的网络。 服务器透明性:不管服务器上的DBMS是何种型号(SQL SERVE、
ORACLE、SYBASE等),一个好的中间件应能通过标准的SQL 语言与不同的DBMS上的SQL语言连接起来。
语言透明性:客户机可用任何开发语言进行发送请求和接受 回答,被调用的功能应该像语言那样也是独立的。另外, 还需要保证开发语言的数据类型和服务器上数据库使用的 数据类型可以相互转换。
1.两层C/S结构
客户软件和服务器软件可以放在一台计算机上,但多 数情况下放在网络中不同计算机上。客户软件一般在 客户端运行,服务器软件一般在服务器上运行。
用户
客户机1
用户
客户机N
服务器 DB
第一层
第二层
2.三层C/S结构 由于两层结构中客户机上都必须安装应用程序和工具(含
公共程序),例如在每台客户机上都安装Power Builder, 使客户端过于庞大、负载太重,从而影响效率。因此引入 三层。
HTML/
DHTML 文档
VRML 文档
客户端 浏览器
Internet
Web 服务器
数据库 服务器
5.Web的工作过程步骤如下:
(1) 用户启动客户端浏览器,在浏览器中确定将要访问页面 的URL地址。浏览器软件使用HTTP协议,向该URL地 址所指向的Web服务器发出请求。
(2) Web服务器根据浏览器送来的请求,把URL地址转换 成页面所在服务器上的文件路径名,找到相应的文件。
数据请求 处理结果
用户
客户 机
服务
DB

通信线路
C/S结构的DBS又可分为单服务器结构和多服务器结构两类。 单服务器结构是在网络中仅有一台DB服务器,而有多台客户 机(本质上仍然属于集中式DBS);多服务器结构是在网络 中可以有多台DB服务器和多台客户机,属于分布式DBS范 畴。
wenku.baidu.com4.2 客户机/服务器计算模式
数据库驱动程序:是一个动态链接库,由各个数据库厂商提 供。它提供对具体数据库操作的接口,因此它是应用程序 对各种数据源发出操作的实际执行者。ODBC规范定义了 两种类型的DB驱动程序——单层驱动程序和多层驱动程序。
数据源(DSN):是驱动程序与数据库系统连接的桥梁,数 据源不是数据库系统,而是用于表达一个ODBC驱动程序 和DBMS特殊连接的命名。在连接中,用数据源名来代表 用户名、服务器名和所连接的数据库名等。
(4) 浏览器解释HTML文档,在客户端屏幕上向用户展示 结果。
6.与C/S模式相比,B/S模式具有以下特点
1、使用简单。 2、易于维护。 3、兼容性好。 4、易于扩展。 5、多级安全保障机制。 6、信息共享度高。 XML——(Extensible Markup language)可扩展标记语言 HTML——(Hypertext Markup language)超文本标记语言
4、数据管理:应用程序中由DBMS完成访问实 际DB的程序。虽不属于应用程序本身,但它 是分布式处理的基本组成部分。
14.3 C/S系统的体系结构
3.1 C/S系统的体系结构
用户 客户机
用户 客户机
文件服务器
打印服务
文件
打印机
用户 客户机 数据库服务
客户机 中间件 服务器
DB
14.4 C/S结构的演变
ODBC的体系结构可以分为四层: ODBC数据库应用程序:主要处理业务逻辑,是ODBC的使
用者。它调用ODBC函数,递交SQL语句给DBMS,从而 实现与数据库的交互,并对数据库的数据进行处理。
驱动程序管理器:是一个名为ODBC.DLL的动态链接库。它 为不同的数据库驱动程序提供统一的函数调用,并管理这 些不同的驱动程序,实现各种驱动程序的正确调度。
(例如:在服务器上安装DB2或SQL Sserver, 用于完成事务处理和数据访问的控制);而另 一些节点上的计算机则专门处理用户的应用程 序,称为客户机(Client)。通常在客户机上 安装DBMS的应用开发工具(如: PowerBuilder、Visual Basic、Delphi), 实现用户界面和前端处理。
相关文档
最新文档