版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十一章 数据库管理系统,11.1 DBMS概述 11.1.1 DBMS的目标 DBMS是介于用户和OS之间的一组软件。 1. 用户界面友好:用户界面应具有可靠性、易用性、立即反馈和多样性等特性。 2. 功能完备:数据库定义、数据库数据存取、数据库运行管理、数据库组织和存储管理、数据库的建立和维护等。 3. 效率高:计算机内部资源的利用率和DBNS本身的运行效率。 4. 结构清晰 5. 开放性,1,PPT学习交流,11.1.2 DBMS的基本功能,DBMS主要是实现对共享数据有效的组织、管理和存取。 1.数据库定义 2.数据存取 3.数据库运行管理 4.数据组织、存储和管理 5.数据库的建立和
2、维护 6.其它功能 通信功能,数据转换功能,2,PPT学习交流,11.1.3 DBMS与操作系统,DBMS是建立在OS之上的软件系统,是OS的用户。 DBMS对共享数据的组织、管理和存取需要OS的支持。 DBMS遇到创建和撤销进程、进程通信、读写磁盘、分配内存等要求时必须请求OS服务。 不同OS提供不同的服务方式,导致DBMS在实现技术上和实现方法上的诸多差异。对于同一OS,DBMS也可以由不同的实现选择。,3,PPT学习交流,11.1.4 DBMS和第四代应用开发环境,屏幕表格 开发工具 SQL*FORMS,菜单生成 SQL*MENU,预编译 PROORACLE,数据通信与 分布软件 LIN
3、K,SQL*STAR,用户友好接口 SQL*PLUS,SQL 执行程序,ORACLE内核 关系数据库 管理系统,报表编写程序 SQL*REPORT,图形软件 SQL*GRAPH,电子表格 SQL*CALC,数据转换 ODL,数据库与 数据字典,4,PPT学习交流,11.2 DBMS的进程结构和多线索机制,应用程序通过DBMS,DBMS通过OS,与数据库中的数据打交道。以及都必须进入某个具体的OS环境。 11.2.1 N方案:DBMS与应用程序相融合的方案,AP1,DBMS,AP2,DBMS,APi,DBMS,U1,Ui,OS,DB,文件,SGA,5,PPT学习交流,11.2.2 2N方案:一个
4、DBMS进程对应一个用户进程,AP1,DBMS,AP2,DBMS,APi,DBMS,U1,Ui,OS,DB,文件,SGA,6,PPT学习交流,11.2.3 N+1方案:一个DBMS进程对应所有用户进程,AP1,DBMS,AP2,APi,U1,Ui,OS,DB,文件,SGA,7,PPT学习交流,11.2.4 N+M方案:M个DBMS进程对应N个用户进程,AP1,DBMS,AP2,APi,U1,Ui,OS,DB,文件,SGA,DBMS,进 程 服务池,8,PPT学习交流,11.2.5 多线索(Multi_Threaded) DBMS的概念 一、线程的概念 在OS中,将进程的概念一分为二,Task是
5、申请资源的最小单位,而Thread是调度和运行的最小单位。一个Task中可以有多个Thread,它们共享Task的所有资源,共同完成一个任务。一个Thread只能存在于某个Task中。在多处理机上,这些Thread可真正并行地执行。 多个线程运行于同一实体(任务或进程),并共享该实体所拥有的所有资源。 线程的基本概念就是将进程中的程序代码与进程所占资源相分离,从而在一个地址空间可以运行多个指令流。,9,PPT学习交流,进程、Task与Thread,PC,PS,SP Stack Register (运行资源),进程控制信息 存储管理信息 信号处理信息 文件指针管理 资源占用统计 资源控制信息,进
6、程控制信息 存储管理信息 信号处理信息 文件指针管理 资源占用统计 资源控制信息,运行资源,UNIX中进程的概念 MACH中Task与Thread概念 Thread Task,10,PPT学习交流,二、多线索(Multi_Threaded)DBMS 数据库系统中的“线索”概念借鉴了OS”线程”概念的含义:整个DBMS可以看作一个Task,当有一个用户申请数据库服务时,Task分配至少一个Thread为之服务,多个Thread并行工作,共享资源。 一般地讲,DBMS中的线索是DBMS的一个执行流,它服务于整个DBMS系统或DBMS的某个用户;DBMS服务器相应客户请求是通过为每个用户创建线索来完
7、成。 DBMS的各个线索能在逻辑上并行执行,并共存于一个进程,共享DBMS的所有资源;线索是DBMS的调度单位,服务器进程能按一定的调度算法调度用户请求。,11,PPT学习交流,三、线索与进程的比较 1. 线索比进程占用较少的资源 线索是程序中的一串指令流,同一进程内的多个线索共享该进程内的一切资源。因此,线索比进程占用更少的资源,是更小的调度单位,可支持较细粒度的并行。 2. 线索调度比较灵活,可控制性强 进程调度是OS控制的、非智能的,DBMS无法干涉 3. 线索切换开销较小 线程共享同一地址空间 4. 线索间通信简单 线索可以借助全局变量名或局部变量名的指针进行通信。,12,PPT学习交
8、流,11.3 DBMS系统结构,11.3.1 DBMS程序模块的组成 一、数据库定义方面的程序模块 模式、外模式、存储模式的定义模块。 安全性定义程序模块。 完整性定义程序模块。 二、数据操纵方面的程序模块 查询处理程序模块。 数据更性程序模块。 交互式查询程序模块。 嵌入式查询程序模块。,13,PPT学习交流,三、数据库运行管理方面的程序模块 主要有系统初启程序和安全性检查、完整性检查、并发控制、事务管理、运行日志管理等三、数据库运行管理方面的程序模块。 四、数据库组织、存储和管理方面的程序模块 有文件读写于维护程序、存取路径管理和维护程序、缓冲区管理程序等 五、数据库建立、维护和其他方面的
9、程序模块 有数据库初始装入程序、转储程序、恢复程序、数据库重构造程序、数据转换程序、通信程序等。,14,PPT学习交流,11.3.2 DBMS的层次结构,应用层,语言编译处理层,数据存取层,数据存储层,操作系统,数据库,15,PPT学习交流,11.3.3 DBMS运行过程示例,系统 缓冲区,数据库管理系统 (DBMS),操作系统,数据字典,数据库,16,PPT学习交流,11.4 语言处理,11.4.1 语言翻译处理层的任务和工作步骤 任务:把用户提交的交互式命令或嵌入式语言转换成对应的DBMS层内可执行的基本存取模块的调用序列。 数据库语言通常包括DDL、DML和DCL三部分。 在RDMBS中
10、DD通常采用和普通数据同样的表示方式表。它包括关系定义表、属性表、视图表、视图属性表、视图表达式表、用户表、存取权限表等。 DD是DML语句处理、执行以及DBMS运行管理的基本依据。,17,PPT学习交流,RDBMS数据字典的部分示意图,关系定义表,关系名,视图定义指针,属性定义指针,记录总数,记录长度,属性个数,建立者,别名,视图属性指针,基关系指针,视图表达式指针,视图表,属性名,类型,长度,记录内偏址,完整性定义指针,属性表达式指针,属性表,属性名,基关系属性指针,属性表达式设计,用户名,口令,用户表,视图属性表,用户名,数据对象名,数据对象类型,操作权限,存取谓词,用户权限表,视图名,
11、表达式语法树 根指针,18,PPT学习交流,词法分析 语法分析 符号名转换,合法权检查 完整性检查 视图转换,代数优化 存取路径优化 策略描述,DML语句,可执行的RDBMS内层基本存取模块的调用序列,查询检查,查询分析,查询优化,数据库 数据字典,DBMS 内层基本 模块库,单元组接口,多元组接口,19,PPT学习交流,11.4.2 解释方法 解释执行 与编译技术 11.4.3 预编译方法,源模块,修改后的 源模块,预编译器,数据库 数据字典,该语言的编译器,束缚(bind),目标模块,装载模块,连接,(装载模块) (应用规划),数据存储管理器器,运行监督器,(其它),DB,DBMS 内存基
12、本 存取模块,应用规划,DBRM Select From,内存,20,PPT学习交流,11.5 数据存取层,语言处理层:元组、关系、视图等逻辑数据结构,数据存取层:逻辑记录、逻辑块、逻辑存取路径,数据存储层:逻辑记录、块、块组成的系统缓冲区,多元组接口(如SQL语句),单元组接口,存储器接口,21,PPT学习交流,11.5.1 存取层的系统结构,记录存取、事 务管理子系统,控制信息 管理,排序/合并 子系统,存取路径 维护子系统,封锁子系统,日志登录子系统,数据存储层,单元数据接口,22,PPT学习交流,11.5.2 存取层的功能子系统,一、记录存取、事务管理子系统 不涉及存储分配、存储结构及
13、有关参数,只在数据的逻辑结构上操作,因而可以把各种物理实现形态隐藏起来。 二、日志登记子系统 三、控制信息管理子系统 四、排序/合并子系统 五、存取路径维护子系统 六、封锁子系统,23,PPT学习交流,11.6 缓冲区管理,控制信息,第一页,第二页, (操作:查找页、 申请页、 淘汰页) ,BUFFER,读(READBUF),写(WRITEBUF),读(OS),写(OS),数据库,数据库缓冲区 及上下接口,24,PPT学习交流,在缓冲区中查找页,找到?,在缓冲区中申请一页,按淘汰策略淘汰一页,从外存读入新页,READBUF,NO,无空页,有空页,YES,缓冲区管理示意图 (读操作),25,PP
14、T学习交流,11.7 数据库物理组织,一、数据字典(DD)的组织 二、数据及数据联系的组织 三、存取路径的组织 四、一个实际系统的例子 ORACLE系统(无论大型、中型或微机版本) 数据库存储空间有RDBMS管理 数据库在逻辑上又一个或多个分区组成 分区中至少有一个系统分区,DD存储在该分区中 一个分区包含一个或多个数据库表 一个表只能属于一个分区,不能跨分区存放 一个分区物理上由一个或多个物理文件组成,26,PPT学习交流,ORACLE DATABASE,分区 (partitions),物理文件 (physical files),数据库表 (database tables),物理块 (physical blocks),数据段 (data segment),索引段 (index segment),数据区间 (data extents),索引区间 (index extents),1:n,Orcale数据库组织示意图,27,PPT学习交流,时间印(Timestamp),下一块的地址,上一块的地址,块头信息(Header),该行长度,行号,列a长度,列a标识,列a数据,列b长度,列b标识,列b数据,备用空间(由PCTFREE参数确定),Orcale数据块的格式,28,PPT学习交流,11.8 小结,本章主要讨论DBMS的基本功能,系统结构及主要的实现技术。 按照DBMS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东东莞市望牛墩镇中心幼儿园招聘备考题库及参考答案详解(考试直接用)
- 2026广东深圳市宝安区教科院实验幼儿园招聘公办幼儿园短期主班教师1人备考题库及完整答案详解【名师系列】
- 中移动金融科技有限公司2026春季园招聘备考题库及答案详解一套
- 2026中国美术学院特殊专业技术岗位招聘19人备考题库(浙江)含答案详解(夺分金卷)
- 2026江西昌华路建设咨询监理有限公司招聘备考题库及一套答案详解
- 长城电源2026届春季校园招聘备考题库及完整答案详解(夺冠)
- 2026云南临沧检测机构招聘食品检测聘用人员1人备考题库附参考答案详解(a卷)
- 2026重庆永川区中山路街道办事处中山路社区招聘全日制公益性岗位人员1人备考题库(研优卷)附答案详解
- 20206中国烟草南通醋酸纤维有限公司招聘备考题库及答案详解【名师系列】
- 2026新疆第四师总医院春季招聘88人备考题库附完整答案详解(各地真题)
- 三级 模块二 项目六 功能促进 任务三 指导或协助老年人使用安全防护性辅助器具
- 2026年安徽工贸职业技术学院单招职业技能测试题库附答案详解ab卷
- 2026贵州省气象部门第二批公开招聘应届毕业生22人考试参考题库及答案解析
- 网络安全与信息素养课件
- 国画竹子课件
- 不一样的卡梅拉2-我想有颗星星
- 1999年制干部履历表8k
- 中国普通食物营养成分表一览
- 潜水医学PPT完整全套教学课件
- 水稻病虫害综合防治课件
- 咨询项目突发事件应急预案
评论
0/150
提交评论