分布式数据库系统1.ppt_第1页
分布式数据库系统1.ppt_第2页
分布式数据库系统1.ppt_第3页
分布式数据库系统1.ppt_第4页
分布式数据库系统1.ppt_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分布式数据库技术- 原理、系统及其在Internet时代的新发展,顾君忠 Institute of Computer Applications ICA-ECNU E-mail: ,1. 数据库系统基础和原理,1.1 发展历史回顾 1.2 数据、数据库、数据库系统和数据库管理系统 1.3 数据模型和关系数据模型 1.4 SQL语言 1.5 数据库系统的存储和存取管理 1.6 数据库的可靠性和系统审计 1.7 并发控制和数据封锁 1.8 数据库系统性能评测 1.9 练习,1.1 发展历史回顾,从源头看,数据库技术的起源最早可以追溯到20世纪50年代后期。随着计算机的发展,计算机的应用从科学计算和过程控制逐步推广到了数据处理领域。从而产生了对数据库的原始需求。,从科学计算/过程控制到数据处理,问题起由: 数据冗余 数据过时-由于数据副本很多,数据难于及时得到修改。 数据与应用程序互相依赖,数据管理要求:,1.顾及所有处理过程,避免数据冗余。 2.提高应用程序相对于数据的独立性。 3.集中检查数据完整性。,数据管理,指如何对数据分类、组织、编码、存储、检索和维护,是数据处理的中心问题。,1:程序员自行编写输入输出子程序,直接把数据存贮在外存贮器上; 2:OS提供的存取方法如SAM、ISAM将I/O和存贮分配标准化,使应用程序摆脱了对存贮结构参数的依赖性。 3:专门的文件管理系统,承担数据的修改、排序和准备,提供报告生成程序 (RPG) 。程序员不再与数据存贮格式和类型打交道,从而达到了一定的数据独立性。 4:出现了公用的数据库系统,如 IMS以及按DBTG报告实现的系统,还出现了一批描述数据(DDL)和应用程序员用于处理数据(DML)的语言。 5:建立在关系模型或实体集合(entity set)模型基础上的。 6:语义数据模型,诞生了演绎数据库,数据库技术的语义化(智能化)。另一个发展是数据库技术的多媒体化。多媒体数据库也成了目前数据库技术发展的一个热点。网络化(分布化)是数据库技术发展的又一个重要方向。,历程,1人工管理阶段 2文件系统阶段 3数据库系统阶段,1.2 数据、数据库、数据库系统和 数据库管理系统,数据(data)-数据指描述事物的符号记录。文字、图形、图像、声音、学生的档案记录、货物的运输情况等都是数据。 数据库(database,简称DB)-数据库指长期存储在计算机内有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户共享。,数据库管理系统(database management system,简称DBMS)-数据库管理系统指位于用户与操作系统之间的一层数据管理软件。数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制。数据库管理系统使用户能方便地定义数据和操纵数据,并能够保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。 数据库系统(database system,简称DBS)-数据库系统指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。,1.3 数据模型和关系数据模型,数据模型由三个要素组成: 数据结构 数据操作 完整性约束,数据模型,三个要素: 1数据结构-数据结构用于描述系统的静态特性,是所研究的对象类型的集合。数据模型按其数据结构分为层次模型、网状模型和关系模型。 2数据操作-数据操作用于描述系统的动态特性,是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作集合。 3数据的约束条件,数据模型主要有三类:,1.关系数据模型。 2.层次数据模型。 3.网状模型。,关系模型,三个基本概念 属性的域(Domain),它说明属性所有合理的取值。 规范化的关系(Relation),用它来定义所有合理的数据记录。 键(Key),它用于保持关系的集合特征。,关系模式由关系名、属性名的有穷集合 (A1,A2,An) (在一个关系模式内,属性名是一义性的)和属性名集合在域集合上的函数映射 FRN构成。若属性名A对应域DF(A),则A的所有属性值都属于 D。一个域可以与多个属性名对应。,保持关系R中元组一义性的属性或属性组被称为候选键。 从R的所有候选键中挑选一个作为主键。 如果某关系的一个属性(或属性组)与另外一个关系的某个候选键同域,则称之为外键.,定义1 域(Domain)是一组具有相同数据类型的值的集合。 例如,整数、实数、字符串、男,女,大于0小于等于100的正整数等都可以是域。,定义2 给定一组域Dl,D2,Dn,则Dl,D2,Dn的笛卡尔积为: DlD2Dn(d1,d2, ,dn)|diDj, j=1,2, ,n 其中每一个元素(d1,d2,dn)叫作一个元组,元素中的每一个值di叫作一个分量。,定义3 DlD2Dn的子集叫做在域Dl,D2,Dn上的关系,用R(Dl,D2,Dn)来表示。这里R表示关系的名字。,4关系的性质,(1)列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。 (2)不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。 (3)列的顺序无所谓,即列的次序可以任意交换。 (4)任意两个元组不能完全相同。 (5)行的顺序无所谓,即行的次序可以任意交换。 (6)分量必须取原子值,即每一个分量都必须是不可分的数据项。,1.3 关系代数,1并 关系R与关系S的并由属于R或属于S的元组组成,其结果关系仍为n目关系。记作RS。 2交 关系R与关系S的交由既属于R又属于S的元组组成,其结果关系仍为n目关系。记作RS。 3差 关系R与关系S的差由属于R而不属于S的所有元组组成。其结果关系仍为n目关系。记作R-S。 4广义笛卡尔积,选择 投影 连接 除,一些规则,规则2.1 实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。 规则2.2 参照完整性规则:若属性(或属性组)F是关系R的外键,它与关系S的主键Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值为取空值(F的每个属性值均为空值),或者等于S中某个元组的主键值。,1.3.1 函数依赖,定义1.3 令R(U)为一个关系模式,U是R的属性集合,XU和YU是U的子集。对于R(U)的任意一个可能的关系r,如果r中不存在两个元组,它们在X上的属性值相同,而在Y上的属性值不同,则称“X函数确定Y”或“Y函数依赖于X”,记作XfY(有时简化为XY)。,1.3.2 完全函数依赖与部分函数依赖,定义1.4 在关系模式R(U)中,如果X Y,并且对于X的任何一个真子集X,都有X Y,则称Y完全函数依赖于X,记作X c Y。若X Y,但Y不完全函数依赖于X,称Y部分函数依赖于X,记作X p Y。,1.3.3 传递函数依赖,定义1.5在关系模式R(U)中,如果XY, Y X,Y Z,则称Z传递函数依赖于X。,1.3.4 规范化的方法,通常把某一关系模式R为第n范式简记为RnNF。 1NF2NF 3NF ,11NF 定义 如果一个关系模式的所有属性都是不可分的基本数据项,则R1NF。 任何一个关系模式都是1NF,不满足第一范式的数据库模式不能称为关系数据库。 22NF 定义 若关系模式RlNF,并且每一个非主属性都完全函数依赖于R的键,则R 2NF。 2NF就是不允许关系模式的属性之间有这样的函数依赖XY,其中X是键的真子集,Y是非主属性。显然,键只包含一个属性的关系模式如果属于1NF,那么它一定属于2NF。 33NF 定义 如果关系模式R中不存在候选键X、属性组Y以及非主属性Z(ZY),使得XY,YZ,YX成立,则R3NF。,各类关系系统,按照E.F.Codd的思想,依据关系系统支持关系模型的程度不同,可以把关系系统分为四类,如图2-1所示。,(a)表式系统 (b)(最小)关系系统 (c)关系完备系统 (d)全关系系统 图2-1 关系系统分类,1.4 数据库高级接口的特征和SQL语言,1.4.1 数据定义,CREATE TABLE 表名(列名 数据类型 列级完整件约束条件 ,列名 数据类型 列级完整性约束条件,表级完整性约束条件), 定义表,CREATE TABLE 表名(列名 数据类型 列级完整件约束条件 ,列名 数据类型 列级完整性约束条件 ,表级完整性约束条件), 修改表,ALTER TABLE 表名 ADD新列名 数据类型 完整性约束条件 DROP 完整性约束名 MODIFY 列名 数据类型;, 删除表,DROP TABLE 表名;, 建立索引,CREATE UNIQUE CLUSTER INDEX 索引名 ON 表名(列名 次序 ,列名次序); UNIQUE表示此索引的每一个索引值只对应惟一的数据记录。 CLUSTER表示要建立的索引是聚簇索引。,1.4.2 数据查询,SELECT ALL|DISTINCT目标列表达式,目标列表达式 FROM 表名或视图名,表名或视图名 WHERE 条件表达式 GROUP BY列名 HAVING 条件表达式 ORDER BY列名 ASC|DESC,1.4.3 数据更新, 插入数据,INSERT INTO 表名 (列名1,列名2) VALUES(常量1,常量2 ); INSERET INTO 表名 (列名1,列名2) 查询子句;, 修改数据,UPDATE 表名 SET 列名表达式 ,列名表达式 WHERE 条件;, 删除数据,DELETE FROM 表名 WHERE 条件;,1.4.4 数据控制,授权 收回权限,GRANT 权限,权限 ON 对象类型 对象名 TO 用户,用户 WITH GRANT OPTION;,REVOKE 权限,权限 ON 对象类型 对象名 FROM 用户,用户 ;,1.4.5 嵌入宿主语言,1.5 数据库系统体系结构,数据库系统的多级模型 应用程序的束缚时间 系统实现的要点,数据库系统的多级模型,Senko等人提出的数据独立存取模型(DIAM) : 1逻辑数据结构(实体集合模型 entity set mode1)。 2逻辑存取路径(串模型 string model)。 3存贮结构(编码模型 encoding mode1)。 4存贮器分配结构(物理设备模型 physical device model)。,束缚时间,1在编写源程序时通过数据定义束缚。 2在编译时引入外部数据说明束缚。 3目标程序与预编译出的数据说明表格和子程序束缚。 4在应用程序打开数据库时束缚。 5在真正存取数据库时束缚(全解释)。 束缚时间愈靠后,变化和修改的自由度愈高,当然,束缚之前的解释花费也愈大。如果单纯从经济角度来考虑,束缚时间应尽量靠前。这样一来,就需要在较早地束缚与较高的数据独立性之间尽可能寻找某种适当的途径。,束缚时间愈靠后,变化和修改的自由度愈高,当然,束缚之前的解释花费也愈大。如果单纯从经济角度来考虑,束缚时间应尽量靠前。这样一来,就需要在较早地束缚与较高的数据独立性之间尽可能寻找某种适当的途径。,1.6 数据库系统的基础层-存贮管理,1.7 存贮结构和存取路径,记录在数据页面上的映射 记录编址 TID法 分配表间接地址法 间接编址的指针法,数据库系统中的存取路径结构,主键的存取路径 随机存贮结构 多叉树 存取页面次数的极小化 页内查找策略 数据记录集合的存取路径结构 数据记录集合的连接方法 存贮选择 存取路径的实现技术 辅键存取路径,1.8 簿记功能,数据的物理一致性与逻辑一致性 逻辑一致性的单位-事务,1.8.3 簿记成分的任务,故障分类 处理故障的原因 故障处理措施 事务逐步退出 磁盘式恢复法 磁带式恢复法,支持监视功能(audit trail) 性能测试的工具 磁盘式安全模式的实现 关于安全区间长度的注记,1.9 并发控制和数据封锁,1.9.1 失控存取造成的错误,丢失修改 不一致分析 发生幻象 游标法的副作用(当前值混乱) 未释放修改造成的连锁退出,1.9.2 事务的封锁协议,欲存取的数据先封锁; 对事务已经占有的封锁,不得重复申请; 一个事务必须注意到其他事务所作的封锁; 每个事务分作两段:发育期和蜕缩期。发育期中申请封锁,蜕缩期解除封锁,在蜕缩期不允许申请新封锁。 事务结束时,解除全部封锁。,1.9.3 数据库系统的封锁方法,谓词封锁的分配 修改操作串行化 直接封锁分划部分 分层封锁 直接封锁法和分层封锁法的开销,1.20 数据库系统性能评测,TPC(Transaction Processing Performance Council) TPC是一个非盈利机构,目的是定义事务处理和数据库的基准测试程序和环境 ,对数据库性能作出评估。 TPC基准涉及计算机功能和操作的测量和评估,主要关注事务在商业应用中的性能量度:物品、服务或金钱的交换。一个典型的事务,包括数据库系统里数据的更新,这类数据如库存控制、航空订票,或银行转账等。 TPC产生的基准测试测量事务处理transaction processing (TP) 和数据库性能,依据于在单位时间里,一个给定系统和数据库里许多事务如何实施。 一系列的基准测试,如TPC-App,TPC-C 和TPC-B等。,TPC-App,TPC-App是一个应用服务器和Web服务器基准测试。 实施负载是在一个管理环境中模拟一个7X24小时运行的商务对商务(BtoB)活动来实现的。TPC-App展现应用服务器系统的性能。负载测试会检查商业性应用服务器产品和其上面的数据库,检查内容包括: 多重在线事务会话; 商业可用的应用环境; 使用XML文档和SOAP 用于数据交换; 商务对商务应用逻辑; 分布事务管理; 可靠的、持续化消息; 数据库存取和更新时的动态web响应生成 业务功能范围内同时执行多个事务类别 大小、属性和联系差异很大的多关系的一致性 事务完整性(ACID properties),TPC-C,TPC-C-在线事务处理基准测试。 目前的最新版本是Version 5.4。TPC-C 基准不断发展,现在是各种软硬件环境上OLTP性能比较的标准尺度。 TPC-C仿真一个完整的数据库计算环境。TPC-C 基准使用一小组事务和表来模拟一家分销企业,该企业有一个产品销售周期。每个事务的外部模式和语义

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论