数据库系统概论chp课件12

PPT
  • 阅读 67 次
  • 下载 0 次
  • 页数 67 页
  • 大小 863.047 KB
  • 2022-12-05 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
数据库系统概论chp课件12
可在后台配置第一页与第二页中间广告代码
数据库系统概论chp课件12
可在后台配置第二页与第三页中间广告代码
数据库系统概论chp课件12
可在后台配置第三页与第四页中间广告代码
数据库系统概论chp课件12
数据库系统概论chp课件12
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 67
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】数据库系统概论chp课件12.ppt,共(67)页,863.047 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-92468.html

以下为本文档部分文字说明:

AnIntroductiontoDatabaseSystem中国人民大学信息学院数据库系统概论AnIntroductiontoDatabaseSystem第十二章数据库管理系统AnIntroductiontoDatabaseSystem第十二章数据库管理系统12.1DB

MS的基本功能12.2DBMS的进程结构和多线索机制12.3DBMS系统结构12.4语言处理12.5数据存取层12.6缓冲区管理12.7数据库物理组织12.8小结AnIntroductiontoDatabaseSystem12.1DBMS的基本功能1

.数据库定义和创建2.数据组织、存储和管理3.数据存取4.数据库事务管理和运行管理5.数据库的建立和维护6.其他功能AnIntroductiontoDatabaseSystem12.1DBMS的基本功能(续)数据库定义和创建外模式、模式、内模式的定义数据库完整性的定义安全

保密定义(如用户口令、级别、存取权限)存取路径(如索引)的定义数据字典(亦称为系统目录):存储定义AnIntroductiontoDatabaseSystem12.1DBMS的基本功能(续)数据组织、存储

和管理数据的种类数据字典用户数据存取路径任务以某种文件结构和存取方式物理地组织这些数据实现数据之间的联系目标提高存储空间利用率提高随机查找、顺序查找、增、删、改等操作的时间效率AnIntroduct

iontoDatabaseSystem12.1DBMS的基本功能(续)数据存取数据操纵语言(DML)检索插入修改删除两类DML宿主型语言自立(独立)型语言AnIntroductiontoDatabaseSystem12.1DBMS的基本功能(续)数据库事务管理

和运行管理多用户环境下事务的管理和自动恢复并发控制和死锁检测(或死锁防止)安全性检查和存取控制完整性检查和执行运行日志的组织管理AnIntroductiontoDatabaseSystem12.1DBMS的基本功能(续)数据库的建立和维护建立数据库

数据库的初始建立数据的转换维护数据库数据库的转储和恢复数据库的重组织和重构造性能监测分析AnIntroductiontoDatabaseSystem12.1DBMS的基本功能(续)其他功能DBMS与网络中其他软件系

统的通信功能与其他DBMS或文件系统的数据转换功能异构数据库之间的互访和互操作功能AnIntroductiontoDatabaseSystem12.2DBMS进程结构和多线索机制12.2.1N方案:DBMS与应用程序相融合的方案12.2.22N方案:一个

DBMS进程对应一个用户进程12.2.3N+1方案:一个DBMS进程对应所有用户进程12.2.4N+M方案:M个DBMS进程对应N个用户进程12.2.5多线索(Multi_Threaded)DBMS的概念AnIntroductiontoDatabaseSystem

12.2.1N方案:DBMS与应用程序相融合的方案N个DB用户--N个进程连入式方案SGA(SharedGlobalArea)共享全局区字典定义信息数据和索引缓冲块日志缓冲块封锁控制块AnIntroductiontoDatabaseSystem12

.2.1N方案:DBMS与应用程序相融合的方案优点没有进程切换开销实现比较简单缺点内存的需求量比较大:多DBMS副本代码冗余使系统性能下降适用情况用户数少的小型DBMSAnIntroductiontoDatabaseSystem12.2DBM

S进程结构和多线索机制12.2.1N方案:DBMS与应用程序相融合的方案12.2.22N方案:一个DBMS进程对应一个用户进程12.2.3N+1方案:一个DBMS进程对应所有用户进程12.2.4N+M方案:M个DB

MS进程对应N个用户进程12.2.5多线索(Multi_Threaded)DBMS的概念AnIntroductiontoDatabaseSystem12.2.22N方案:一个DBMS进程对应一个用户进程解决N方案中DBMS代码段在内存中不能被共享应用程序与DBMS副本分开2N方案一用户一进程

(Shadow进程)N个用户进程---N个DBMS进程(共2N个进程)AnIntroductiontoDatabaseSystem12.2.22N方案:一个DBMS进程对应一个用户进程AnIntroductiontoDatabaseSystem12.2.22N方案:一个DBMS进程对

应一个用户进程优点DBMS对各数据库用户的多任务调度由OS完成简化了用户进程与DBMS的接口实现起来比较简单缺点进程间总的通信开销上升操作系统的负担增大,空间、时间效率不高DBMS必须设立并维护若干后台进程,增加了进程切换

要访问的数据不在内存时会造成性能问题临界区问题(CriticalSection)适用情况用户数不庞大(非OLTP应用):Oracle7之前版本,Ingres,Informix早期版本AnIntroductiontoDatabaseSystem12.2DBMS进程结构和多线索

机制12.2.1N方案:DBMS与应用程序相融合的方案12.2.22N方案:一个DBMS进程对应一个用户进程12.2.3N+1方案:一个DBMS进程对应所有用户进程12.2.4N+M方案:M个DBMS进程对应N个用

户进程12.2.5多线索(Multi_Threaded)DBMS的概念AnIntroductiontoDatabaseSystem12.2.3N+1方案:一个DBMS进程对应所有用户进程一个DBMS进程对应所有用户进程整个DBMS仅使用

一个进程,类似于一个服务器(Server)多个数据库用户向Server发message申请数据库服务Server用自己的机制来调度这些申请,以支持一个多任务的数据库系统没有SGA,DBMS进程的数据区=SGA没有后台进程用多线索(Multi_Threaded)技术来实现N+1方案A

nIntroductiontoDatabaseSystem12.2.3N+1方案:一个DBMS进程对应所有用户进程AnIntroductiontoDatabaseSystem12.2.3N+1方案:一个DBMS进

程对应所有用户进程优点采用多线索(Multi_Threaded)技术提高系统性能,降低系统资源的开销,简化DBMS许多部分的设计缺点DBMS的设计整体上较复杂消息系统过于昂贵实际系统SybaseAnIntroductiontoDatabaseSys

tem12.2DBMS进程结构和多线索机制12.2.1N方案:DBMS与应用程序相融合的方案12.2.22N方案:一个DBMS进程对应一个用户进程12.2.3N+1方案:一个DBMS进程对应所有用户进程12.2.4N+M方案:M个DBMS进程对应N个用户进程12.2.5多线索(Mul

ti_Threaded)DBMS的概念AnIntroductiontoDatabaseSystem12.2.4N+M方案:M个DBMS进程对应N个用户进程M个DBMS进程--N个用户进程(一般M<N)DBMS进程不负责多任务调度,每个用户进程也不固定地对应于某个DB

MS进程用户的数据库请求被动态分配给某个DBMS进程来处理DBMS进程的分派由分派程序完成AnIntroductiontoDatabaseSystem12.2.4N+M方案:M个DBMS进程对应N个用户进程AnIntroductiontoDatabaseSystem12.2.4N+M方

案:M个DBMS进程对应N个用户进程优点改进了2N方案,提高了内存资源的利用率缺点没有克服2N方案的本质弱点分派程序给系统增加了开销并可能成为瓶颈DBMS进程动态增减的开销亦很大实际系统OracleInformixAnIntroductiontoData

baseSystem12.2DBMS进程结构和多线索机制12.2.1N方案:DBMS与应用程序相融合的方案12.2.22N方案:一个DBMS进程对应一个用户进程12.2.3N+1方案:一个DBMS进程对应所有用户进程12.2.4N+M方案:M个D

BMS进程对应N个用户进程12.2.5多线索(Multi_Threaded)DBMS的概念AnIntroductiontoDatabaseSystem一、线程的概念进程细化为“任务”(Task)、“线程”(Thread)进程一分为二Task是申请资源的最小单位Thread是调度和运行的最

小单位一个Task中可有多个ThreadThread共享Task的所有资源,共同完成一个任务线程将进程中的程序代码与进程所占资源相分离,从而在一个地址空间运行多个指令流AnIntroductiontoDatabaseSystem一、线程的概念(续)AnIntroductiontoDa

tabaseSystem二、多线索(Multi_Threaded)DBMSDBMS是一个Task用户申请数据库服务时,Task分配至少一个Thread为之服务多个Thread并行工作,共享资源AnIntroductiontoDatabaseSystem三、线索与进程的比较线索比进程占用较

少的资源线索调度比较灵活,可控制性强线索切换开销较小线索间通信简便AnIntroductiontoDatabaseSystem12.3DBMS系统结构12.3.1DBMS的层次结构12.3.2RDBMS的运行过程示例AnIntroductiontoD

atabaseSystem12.3.1DBMS的层次结构处理各种各样的数据库应用是RDBMS与用户/应用程序的界面层处理数据库语言,如SQL向上提供的数据接口是元组的集合处理单个元组把集合操作化为单记录操作并执行

处理数据页和系统缓冲区AnIntroductiontoDatabaseSystem12.3DBMS系统结构12.3.1DBMS的层次结构12.3.2RDBMS的运行过程示例AnIntroductiontoDatabaseS

ystem12.3.2RDBMS的运行过程示例AnIntroductiontoDatabaseSystem12.4语言处理12.4.1语言处理层的任务和工作12.4.2解释方法12.4.3预编译方法AnIntroductiontoData

baseSystem12.4.1语言处理层的任务和工作接收DB语句转换对DBMS内层可执行的基本存取模块的调用序列交互式方式下的SQL语句嵌入3GL中的SQL语句PL/SQL中的SQL语句AnIntroductiontoDatabaseSystem12.4.1语言处

理层的任务和工作(续)DDL语句处理过程把它翻译成内部表示存储在系统的数据字典中DCL语句处理过程与DDL的处理类似AnIntroductiontoDatabaseSystem12.4.1语言处理层的任务和工作(续)DML

语句的处理束缚过程束缚时间DML语句束缚(Binding)一串可执行的存取动作(调用序列)相当于一个小编译器AnIntroductiontoDatabaseSystem其他语句查询语句DML语句语法分析语义检查视图转换数据库数据字典DBMS内层基

本模块库单元组接口对可执行的DBMS内层基本存取模块的调用序列多元组接口查询优化代码生成AnIntroductiontoDatabaseSystem词法分析语法分析语义分析符号名转换合法权检查完整性检查视图转换代数优化存取路径选择优化策略描述数据库数据字典DBMS内层基本模块库单元组接口对可执行的

DBMS内层基本存取模块的调用序列多元组接口查询优化查询分析查询检查DML语句AnIntroductiontoDatabaseSystem12.4.1语言处理层的任务和工作(续)束缚时间编程时------执行前------执行

时编程时-----已淘汰执行时----解释方法执行前----预编译方法AnIntroductiontoDatabaseSystem12.4语言处理12.4.1语言处理层的任务和工作12.4.2解释方法12.4.3预编译方法AnIntroduc

tiontoDatabaseSystem12.4.2解释方法特点执行前,DML语句都以原始字符串的形式保存执行时,解释程序完成束缚过程,然后予以执行优点数据独立性好灵活、应变性好缺点效率比较低适用交互式SQLAnIntroductio

ntoDatabaseSystem12.4语言处理12.4.1语言处理层的任务和工作12.4.2解释方法12.4.3预编译方法AnIntroductiontoDatabaseSystem12.4.3预编译方法不同束缚时间的权衡早:系统效率高,数据独立性差晚:数据独立性

高,执行效率差预编译方法是介于上面二者之间的一个方案特点用户提交DML语句后,运行前对它进行翻译处理保存产生的执行代码运行时,取出执行代码加以执行AnIntroductiontoDatabaseSystem源模块修改后的源模块DBRMSelect…From…W

here…数据库数据字典DBMS内存基本存取模块目标模块装载模块应用规划DB主存(装载模块)(应用规划)运行监督器数据存储管理器(其他)该源语言的编译器连接束缚(bind)预编译器AnIntroductiontoDat

abaseSystem预编译方法的问题应用规划失效(数据库结构改变、存取路径改变)解决方法重编译重编译进行时刻立即重编译被执行时才进行自动重编译自动重编译技术的优点既拥有了编译时进行束缚所

带来的高效率又具备了执行时束缚带来的数据独立性12.4.3预编译方法(续)AnIntroductiontoDatabaseSystem12.5数据存取层语言处理层:元组、关系、视图等逻辑数据结构数据存取层:逻辑记录、逻辑块、逻辑存取路径数据存储层:存储记录、块、块组成的系统缓冲区多

元组接口(如SQL语句)单元组接口存储器接口AnIntroductiontoDatabaseSystem12.5数据存取层12.5.1数据存取层的系统结构12.5.2数据存取层的功能子功能AnIntroductiontoDa

tabaseSystem12.5.1数据存取层的系统结构排序/合并子系统存取路径维护子系统封锁子系统日志登录子系统数据存储层单元组接口记录存取、事务管理子系统控制信息管理AnIntroductiontoDatabaseSystem12.5数据

存取层12.5.1数据存取层的系统结构12.5.2数据存取层的功能子功能AnIntroductiontoDatabaseSystem12.5.2数据存取层的功能子功能记录存取、事务管理子系统日志登记子系

统控制信息管理模块排序\合并子系统存取路径维护子系统封锁子系统AnIntroductiontoDatabaseSystem一、记录存取、事务管理子系统记录存取子系统在某个存取路径上按属性值找元组(FIND)按相对位置找元组(NEXT,PRIOR,FIRST,LAST)。给

某关系增加一个元组(INSERT)从找到的元组中取某个属性值(GET)从某关系中删去一个元组(DELETE)把某修改完的元组写回关系中(REPLACE)事务管理子系统定义事务开始(BEGINTRANSACTION)事务提交(COMMIT)

事务回滚(ROLLBACK)AnIntroductiontoDatabaseSystem二、日志登记子系统写日志记录(WRITELOG)读日志记录(READLOG)扫描日志文件(SCANLOG)撤消尚未结束的事务(UNDO)重做已经结束的事务

(REDO)AnIntroductiontoDatabaseSystem三、控制信息管理模块负责在内存数据区登记记录类型、存取路径的说明信息和控制信息。AnIntroductiontoDatabaseSystem四、排序/合并子系统输出有序结果删

去重复值支持排序–合并方法的连接操作支持动态建立索引结构减少数据块的存取次数AnIntroductiontoDatabaseSystem五、存取路径维护子系统对数据执行插入、删除、修改操作的同时对相应的存取路径进行维护

B+树的维护算法初始建立B+树索引插入删除更新AnIntroductiontoDatabaseSystem7.封锁子系统操作系统和数据库管理系统封锁技术的比较操作系统数据库管理系统封锁对象单一,系统资源(包括CPU、设备、表格等)多样,数据库中各种数据对象(包括用户数据、索引(存取路径)、

数据字典等)封锁对象的状态静态、确定、各种封锁对象在封锁表中占有一项。封锁对象数是不变的动态,不确定。封锁对象动态改变着、常常在执行前不能确定。一个封锁对象只有当封锁时才在封锁表中占据一项封锁的粒度不变,由于封锁对象单一、固定,封锁粒度不会改变可变,封锁可加到或大或小的

数据单位上,封锁粒度可以是整个数据库、记录或字段封锁的类型单一,排它锁多样,一般有共享锁(SLock)、排它锁(XLock)或其他类型的封锁,随系统而异AnIntroductiontoDatabase

System12.6缓冲区管理数据存储层的功能缓冲区管理内外存交换外存管理系统缓冲区设立的原因提供DBMS的设备独立性外存设备的变更不会对它们造成影响提高存取效率异步读写:预先读,延迟写AnIntroductionto

DatabaseSystem12.6缓冲区管理(续)系统缓冲区的组成内存虚存缓冲区管理缓冲区大小太大:占据内存空间太小:频频缺页调页,造成“抖动”,影响效率数据库缓冲区及上下接口缓冲区管理

示意图AnIntroductiontoDatabaseSystem数据库缓冲区及上下接口AnIntroductiontoDatabaseSystem缓冲区管理缓冲区查找算法顺序查找算法折半查找算法hash查找算法缓冲区淘汰算法LRU算法FI

FO算法时钟算法系统控制法混合算法……AnIntroductiontoDatabaseSystem12.7数据库物理组织衡量数据组织优劣的标准存储效率高,节省存储空间;存取效率高,速度快,代价小存储的数据数据描述即数据

外模式、模式、内模式。数据本身数据之间的联系存取路径AnIntroductiontoDatabaseSystem12.7数据库物理组织(续)数据字典(DD)的组织数据量比较小使用频繁数据及

数据联系的组织网状、层次数据库:邻接法和链接法关系数据库:表存取路径的组织网状、层次数据库:数据之间的联系关系数据库:B树类文件结构和Hash文件结构AnIntroductiontoDatabaseSystem12.8小结DBMS的目标用户界面友好功能完备效率高结构

清晰开放性AnIntroductiontoDatabaseSystem12.8小结(续)DBMS的基本功能数据库定义数据存取数据库运行管理数据组织、存储和管理数据库的建立和维护其他AnIntroductiontoDatabaseSystem12.8小结(续

)DBMS的进程结构N方案2N方案M+N方案N+1方案AnIntroductiontoDatabaseSystem12.8小结(续)DBMS的系统结构程序模块组成层次结构DBMS的主要实现技术语言处理层数据存取层数据存储层数据库物

理组织

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?