数据库系统概论第五版:考试预测_HUST_CSE
最终版本~(乱序)
祝考试顺利!
不知是否有愿意帮忙补充知识点的好心人hhh,评论区见!
填空+选择(概念为主
- 查询处理的基本步骤?
- 查询分析、查询检查、查询优化、查询执行
也可能考简答:
- 查询分析:对语句进行扫描、词法分析,识别出关键字等,然后进行语法分析,检查其是否符合SQL语法规则。
- 查询检查:对查询语句进行语义检查,检查数据库、关系名、属性名等是否存在且有效;与此同时,进行视图消解,转化为对基本表的操作;根据用户权限和完整性约束对查询进行检查。检查通过后,将SQL转化为等价的关系代数表达式。
- 查询优化:代数优化和物理优化。通过对关系代数的等价变换使查询变得高效,根据基于规则的、基于代价的、基于语义的方法进行存取路径和底层操作的算法的选择。
- 查询执行
- 查询分析、查询检查、查询优化、查询执行
- 连接操作的实现方法都有?
- 嵌套循环、排序-合并算法、索引连接、hash join算法
- 关系中的基本概念
- 目、度
- 属性
- 候选码,主码,主属性,非码属性、非主属性,全码
- 基本表,视图,查询表
- 关系模式与关系(型与值)
- 视图提供查看和**数据的另一种途径?
- 存放
- 数据模型的组成?
- 数据结构
- 关系操作
- 关系完整性
- 数据库系统由那里个部分组成?
- 数据库
- 数据库管理系统
- 应用系统
- 数据库管理员和用户
- 并发控制的基本单位?
- 事务
- 并发控制保证了事务的哪些特性?
- 隔离性
- 一致性
- 什么是数据库自主访问控制和强制访问控制?
- 自主存取控制方法: 定义各个用户对不同数据对象的存取权限。当用户对数据库访问时,首先检查用户的存取权限。防止不合法用户对数据库的存取
- 强制存取控制方法: 每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某个密级的数据对象。
- 自主存取控制中自主的含义是:用户可以将自己拥有的存取权限“自主” 地授予别人。即用户具有一定的“自主”权。
- 并发操作带来的数据不一致性包括?
- 不可重复读(一个事务运行时需要读取的某个数据的值,被另一个事务修改(或删除、插入),导致读取的值前后不一致)
- 丢失修改(两个用户同时修改一个数据,最终只保存了一个用户的修改结果)
- 读脏数据(读取的数据被撤销或作废等等,导致读取的值与数据库中真实值不一致)
- 并发控制的主要技术:
- 封锁
- 时间戳
- 乐观控制法
- 多版本并发控制(MVCC)
- 简述三级封锁协议?
- 一级封锁协议:事务T在修改数据R之前必须对其加X锁,直到事务结束才释放。解决了丢失修改的问题,但是由于读数据之前不需要上锁,所以还是存在不可重复读和读脏数据的问题。
- 二级封锁协议:修改数据前加X锁直到事务结束释放;读数据前加S锁,读完后释放。解决了读脏数据的问题,因为数据被某个事务修改(X锁)的时候不能被读取(上S锁)。但是由于释放S锁的时机是读取完成时,所以可能存在不可重复读的问题。
- 三级封锁协议: 修改数据前加X锁直到事务结束释放;读数据前加S锁;事务结束时释放。
- 封锁协议中解决死锁的办法?
- 死锁的预防:一次封锁法,顺序封锁法
- 死锁的诊断与解除:超时法(实现太短可能误判、时限太长则不及时发现死锁),等待图法(定期检查图中是否有回路);撤销代价最小的事务,对其执行的数据修改进行恢复。
- 用于查看和操纵数据的动词是?
- 数据查询:SELECT
- 数据操纵:INSERT,UPDATE,DELETE
- 数据定义:CREATE,DROP,ALTER
- 数据控制:GRANT,REVOKE
- 列举常见的关系数据库管理系统?
- Microsoft SQLServer
- ORACLE
- DB2
- InforMix
- Sybase
- FoxPro
- Access
- MySQL
- 数据库的发展阶段及数据的处理方式?
- 人工管理阶段(20世纪50年代之前):存取一 一对应,无共享,各自单独数据定义、处理
- 文件管理阶段(20世纪50年代末-60年代中):文件系统提供了一些存取方法,如随机存取方法、顺序存取方法、hash存取方法等,但本质上应用程序和文件还是一一对应,某一个应用程序要应用某个文件,是由程序员在程序中定义。
- 数据库管理阶段(20世纪60年代末-现在):由数据管理系统统一管理数据,数据由某个数据模型,把他模型化,数据化,应用程序通过数据库管理系统存取数据库里的某些数据。
- 根据关系系统支持的关系模型的程度不同,关系系统分为哪四类?
- 表式系统
- 最小关系系统
- 关系完备系统
- 全关系系统
- 数据库中四种最常用的数据模型?
- 层次模型
- 网状模型
- 关系模型
- 面向对象的模型
- 用什么方法避免并发控制可能导致的数据不一致的情况?
- 一、二、三级封锁协议
- 什么是数据库安全?
- 数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。
- 简述实现数据库安全性控制的常用方法和技术? 有待核实
- 用户标识与鉴别
- 存取控制
- 主存取控制方法
- 强制村粗控制方法
- 视图机制
- 审计
- 数据加密
简答(mainly basic概念?
- 查询优化的好处?
- 优化器可以从数据字典中获得很多统计信息,做出正确的估算。
- 当物理数据改变时,系统可以自动的对查询进行重新优化。
- 优化器可以考虑上百种优化方法。
- 优化器中采用了很多复杂的技术。
- 数据库的四个基本概念?
- 数据
- 数据库
- 数据库管理系统
- 数据库系统
- 什么是关系数据模型及其组成要素?
- 数据结构
- 关系操作
- 关系完整性
- 什么是外模式、模式、内模式?
- 模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。
- 外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。
- 内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式翱与物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。
- 存储过程
- 各个范式的概念
- 1NF:基础的二维表:每个数据单元不可再分,都是不可再分的数据项。
- 2NF:1NF的基础上 非主属性完全函数依赖于候选码
- 3NF:1NF的基础上 非主属性对码不存在传递依赖
- BCNF:1NF的基础上 每一个决定属性集都包含候选码
- E-R图的基本要素是什么?
E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
构成E-R图的基本要素是实体型、属性和联系,其表示方法为:- 实体型:用矩形表示,矩形框内写明实体名;
- 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来;
- 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。
- 定义并解释概念模型中以下术语:实体、实体型、实体集、属性、码、实体-联系图(E-R图)
- 什么是数据库的完整性?
- 数据库的完整性指的是数据的正确性和相容性,及数据是符合现实世界语义、反应当前的实际情况的,且数据库同一对象在不同关系表中的数据是符合逻辑的不相互矛盾。
- 什么是数据库的完整性约束条件?
- 数据库完整性约束条件也称完整性规则,是数据库中的数据必须满足的语义约束条件,包括关系模型的实体完整性、参照完整性、用户定义的完整性。
- DBMS 的完整性控制机制应具有哪三个方面的功能?
- 定义功能:提供定义完整性约束条件的机制。
- 检查功能:检查用户发出的操作请求是否违背了完整性约束条件。
- 违约处理功能:如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动作来保证数据的完整性。
- 描述关系模型的三类完整性约束?
- 实体完整性
- 参照完整性
- 用户自定义的完整性
- 什么是事务?事务的特性?
- 事务是用户定义的一个数据库的操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位
- 事务具有原子性、一致性、隔离性和持续性
- 数据库系统的主要优点?
- 数据结构化
- 数据的共享性高、冗余度低,易扩充
- 数据独立性高
- 数据由DBMS统一管理和控制
- SQL语句的主要功能?
- 数据查询
- 数据定义
- 数据操纵(有的地方数据操作指的是数据查询和数据更新)
- 数据控制(授权、完整性控制、事务控制等)
- 数据库的三级模式和两级变换是什么?
- 外模式、模式、内模式
- 外模式/模式映射,模式/内模式映射
- 基本关系的六条性质
- 列是同质的。每一列中的分量是同一类型的数据,来自同一个域
- 不同的列可以来自同一个域。每一列成为一个属性,不同的属性要有不同的属性名
- 列的顺序无所谓
- 任意两个元组不能相同
- 行的顺序无所谓
- 分量必须取原子值
- 简述数据库系统的主要特点:
- 数据库的管理者:DBMS
- 数据面向的对象:现实世界
- 数据的共享程度:共享性高
- 数据的独立性:高度的物理独立性和一定的逻辑独立性
- 数据的结构化:整体的结构化
- 数据的控制能力:由DBMS统一管理和控制
- 为什么事务非正常结束会影响数据库数据的正确性?举例
- 事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。
- 例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。则可以定义一个事务T,T包括两个操作;Q1=Q1-Q,Q2=Q2+Q。如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。
- 为什么先写日志后写数据库?
- 把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作,这两个操作执行的过程中间可能会发送故障。如果先进行数据库的修改,而还未记录这个修改时就发送了故障,以后可能就无法修复这个修改了;如果先写日志,但还未修改数据库,则恢复时只是多执行了一次不必要的UNDO操作,不会影响数据库的正确性。
针对不同的故障,试给出恢复的策略和方法(事务故障恢复/系统故障恢复/介质故障恢复)
- 事务故障的恢复:利用日志文件撤销此事务对数据库进行的修改。(事务故障:事务在运行至正常终止点前被终止)
- 反向扫描日志文件,查找所有更新操作,直到扫描到事务的开始标记
- 对更新操作执行逆操作,将更新前的值写入数据库
- 系统故障的恢复:撤销未完成(但以及修改了数据库)的事务,重做已完成(但没来得及写入数据库)的事务
- 正向扫描日志文件,找出在故障发生前已经提交的事务队列(REDO队列)和未完成的事务队列(UNDO队列)。
- 对未完成的事务队列中的各个事务进行UNDO处理。
- 对已经提交的事务队列中的各个事务进行REDO处理
- 介质故障的恢复:
- 重装数据库,重做已完成的事务
- 数据库可能发生什么样的故障?应对方法?
- 事物内部的故障
- 系统故障(软故障):造成系统停止运转的任何事件,是得系统要重新启动。必须在系统重启时回滚所有非正常终止的事务,重做已提交的事务。
- 介质故障(硬故障)
- 计算机病毒
- 应对方法:
- 数据转储:动态、静态的增量、海量转储。
- 日志文件:以记录、数据块为单位。登陆的次序严格按照并发事件执行的事件次序。
- 什么是检查点记录?包括哪些内容?
- 检查点记录是一类新的日志纪录。它的内容包括:
- 建立检查点时刻所有正在执行的事务清单
- 这些事务的最近一个日志记录的地址
- 检查点记录是一类新的日志纪录。它的内容包括:
大题(应用向
数据库设计
SELECT语句(嵌套查询,自身连接,OLD、NEW
符合第几范式?
关系代数语句
注意在写的过程中用PAI(选择)简化数据间的关系!我们只选出与判断条件和最终结果有关的属性即可(尤其是在连接操作的过程中,连接操作会产生大量的数据冗余)并发控制(1.是否是冲突可串行化调度?2.封锁协议 3.两段锁协议)
概念:可串行化调度:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行的执行这些事务时的结果相同。可串行性是并发事务正确调度的准则。
不能交换的:冲突操作(不同事物对同一数据的读读或读写),同一事务的两个操作。(交换一定是不同事务对不同数据的操作,因为二者是没有联系的,其先后对最终的结果没有影响)
交换后变为串行的执行顺序,则是冲突可串行化调度,一定是正确的。但可串行化调度不一定满足冲突可串行化条件。
两段锁协议:事务必须分两个阶段对数据项进行加锁和解锁。遵循两段锁协议的事务一定是可串行化的。恢复技术(回滚、日志等等)
- 查询优化的计算(I/O次数)
假设关系R(A ,B)和S(B,C,D)情况如下:R有20000个元组,S有1200个元组,一个块能装40个R的元组,能装30个S的元组,估算下列操作需要多少次磁盘块读。
- R上没有索引, select * from R;
- R中A为主码,其上有3层B+树索引 , select * from R where A = 10;
- 嵌套循环连接RS;
- 排序合并连接RS,区分R与S在B属性上有序和无序两种情况。
- 存储过程
others
- default = ‘男’
试卷1
发现了一个不错的博主?
数据库恢复技术
关系查询处理和查询优化
数据库设计
数据库系统概论第五版:考试预测_HUST_CSE相关推荐
- 《数据库系统概论(第五版)》学习资料
<数据库系统概论(第五版)>学习资料 一.第一章 1.数据:描述事物的符号记录 2.数据库:长期储存在计算机内.有组织.可共享的大量数据集合. (数据库中的数据按一定的数据模型组织.描述和 ...
- 数据库系统概论第五版第二章习题6
(SPJ数据库查询操作) 数据库系统概论第五版第二章习题6(SPJ数据库查询操作)_FunPony的博客-CSDN博客
- 数据库系统概论第五版课后习题
数据库系统概论第五版课后习题
- 数据库系统概论第五版知识大纲
数据库系统概论第五版知识大纲 第1章 绪论 1.1 数据库系统概述 基本概念 数据:描述事物的符号记录 数据库:数据库是长期储存在计算机内.有组织的.可共享的大量数据的集合 数据库系统:数据库系统是由 ...
- 数据库系统概论(第五版 王珊 萨师煊 编著)
数据库系统概论知识点总结 学习目录 基础篇 第一章 绪论 1.1 数据库系统概述 1.2 数据模型 1.3 数据库系统的结构 1.4 数据库系统的组成 1.5 小结 第二章 关系数据库 第三章 关系数 ...
- 数据库系统概论第五版(理论总结)
第一章绪论 表述事物的符号称为数据.表述事物的符号可以是数字,也可以是文字.图形.图像.音频.视频等. 数据库是长期存储在计算机内.有组织的.可共享的大量数据的集合. 数据库系统是由数据库.数据库管理 ...
- 数据库系统概论第五版(王珊)—重点知识总结
第一章 1.数据库的四个基本概念 数据库的四个基本概念:数据.数据库.数据库管理系统.数据库系统 数据,是信息的载体,是数据库中存储的基本对象,是描述事物的符号记录. 数据库,是长期储存在计算机内.有 ...
- 数据库系统概论第五版第(第 4 章数据库安全性)习题答案
目录 1. 什么是数据库的安全性? 2. 数据库安全性和计算机系统的安全性有什么关系? 3.试述信息安全标准的发展历史... 4. 试述实现数据库安全性控制的常用方法和技术. 5. 什么是数据库中的自 ...
- 数据库系统概论第五版-重点知识点思维导图
本人为了准备期末考试准备的,按照我自己的重点整理的,有很多不完整,也可能有错误的地方,希望看到的小伙伴能指出来,谢谢!
最新文章
- Redis源码解析——内存管理
- iOS 应用发布到AppStore流程
- 【转】创建数据库和表的SQL语句
- Effective Java之避免使用终结方法(七)
- inputstream是否一定要close_汽车加装行李架后,总被交警拦下,类似改装,是否一定要备案...
- hashmap为什么是2的倍数_HashMap源码解析(jdk1.8)
- SharePoint2007 配置MOSS基于AD的Forms验证
- php表单验证内容不能为空,php校验表单检测字段是否为空的方法_PHP教程
- 6.6纪念永远的badboy
- 覆盖索引与联合索引_Mysql性能优化:为什么要用覆盖索引?
- 回调函数 EnumFontFamProc
- 比特币交易信息 广播 服务器,《比特币白皮书》区块圣经(3)时间戳服务器(Timestamp serv...
- Json 读写操作中含有中文时
- 电力用户用电信息采集系统通信协议报文解析示例
- Cocos Creator大厅+子游戏模式
- 软件工程实践 Blog17
- 【图像分割】基于直觉模糊C均值聚类实现图像分割IFCMmatlab代码
- 青春散场,永远的天王!
- linux 安装云锁
- Flutter Dart 数字转成中文金额大写