关系数据库系统

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

数据库管理系统是数据库系统的核心

数据库系统是在文件系统的基础上发展而来的

数据库最大的特点是“数据的三级抽象和二级独立”

数据库是存储在计算机内有结构的数据集合

数据库应用系统包括数据库和数据库应用程序

关系数据库系统: 是支持关系模型的数据库系统

数据模型的三要素是: 数据结构、数据操作和数据完整性

关系模型的组成

1. 关系数据结构

2. 关系操作集合

3. 关系完整性约束

关系模型中常用的关系操作: 选择、投影、并、差、笛卡尔积是5种基本操作

关系操作的特点: 集合操作方式,即操作的对象和结果都是集合

关系代数

是一种抽象的查询语言

用对关系的运算来表达查询

关系代数运算的三个要素

运算对象:关系

运算结果:关系

运算符:四类关系代数运算符

关系运算的分类:分为传统的集合运算和专门的关系运算

SQL的功能特点

数据查询

数据定义(DDL)

数据操纵(DML)

数据控制(DCL)

约束条件类型

⏹PRIMARY KEY(主键约束)

⏹UNIQUE(惟一约束)

⏹NOT NULL(非空约束)

⏹FOREIGN KEY(外键约束)

⏹CHECK(检查约束)

建立索引的目的:基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。

数据库异常问题

1.冗余太大

2.插入异常

3.删除异常

4.修改异常

数据依赖:是一个关系内部属性与属性之间的一种约束关系,是语义的体现。分为函数依赖和多值依赖。

泛关系模式:就是最初设计的关系模式,或者说是存在异常问题的关系模式。

数据库模式:根据范式理论,将不符合用户需求的泛关系模式分解成一系列的关系集合。

若R∈1NF,且R中的每一个非主属性都完全函数依赖于R的任一候选码,则R∈2NF。

⏹如果关系模式R∈BCNF,必定有R∈3NF

⏹如果R∈3NF,且R只有一个候选码,则R必属于BCNF。

任何的二元关系必定是BCNF

⏹查询优化:从查询的多个执行策略中进行合

理选择的过程。

⏹查询优化的分类:代数优化和物理优化

数据保护也叫数据控制,主要包括:

●数据库恢复

●并发控制

●数据的安全性

●数据的完整性

事务(Transaction)

是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。

⏹事务可以是一组SQL语句、一条SQL语句或整个程序,在通常

情况下,一个应用程序里包含多个事务。

⏹事务生成:

⏹用户显式地定义事务

⏹由DBMS按缺省自动划分事务

事务的特性

1.原子性(Atomicity)

一个事务中对数据库的操作,是一个不可分割的整体。

2.一致性(Consistency)

数据不会因事务的执行而遭受破坏。

3.隔离性(Isolation)

在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样。

4.持久性(Durability)

一个事务一旦完成全部操作,它对数据库的所有更新应永久地反映在数据库中。

事务是数据库恢复和并发控制的基本单位

数据库故障恢复的基本单位是事务,因此在数据恢复时主要使用事务撤销(UNDO)与事务重做(REDO)两个操作。

⏹ 1. 事务级故障

⏹事务内部执行所产生的逻辑错误与系统错误,它

由诸如数据输入错误、数据溢出、资源不足以及死锁等

引起,使得事务尚未运行到终点即告夭折。

⏹ 2. 系统级故障

⏹指造成系统停止运转的任何事件,使得系统要重

新启动,通常称为软故障。

⏹ 3. 介质级故障

⏹也称为硬故障(Hard Crash),如磁盘损坏、磁

头碰撞、瞬时强磁场干扰等。这类故障将破坏数据库或

部分数据库。

数据转储的概念

转储即DBA定期地将整个数据库复制到磁带或另一个磁盘上保存起来的过程。这些备用的数据文本称为后备副本(backup)或后援副本。(1)静态转储:是在系统中无运行事务时进行的转储操作。静态转储得到的一定是一个数据一致性的副本。

(2)动态转储:是指转储期间允许对数据库进行存取或修改。即转储和用户事务可以并发执行。

3、海量转储和增量转储

(1)海量转储:每次转储全部数据库。

(2)增量转储:每次只转储上一次转储后更新过的数据

日志文件(log file)—用来记录事务对数据库的更新操作的文件。日志文件的作用

进行事务故障、系统故障恢复,并协助后备副本进行介质故障恢复。

系统故障的恢复:

恢复操作:

要撤销故障发生时未完成的事务(撤销队列进行UNDO)

重做已完成的事务(重做队列进行REDO)

介质故障的恢复需要DBA介入。

动态维护日志文件的方法是周期性地执行: 建立检查点,保存数据库状态

⏹具体步骤:

①将当前所有日志记录写入磁盘日志文件上;

②在日志文件中写入一个检查点记录;

③将当前所有数据记录写入磁盘的数据库中;

④把检查点记录在日志文件中的地址写入一个重新开始文件。

⏹在数据库系统中,为了提高性能,多个事务并发执行是必要的。

●提高CPU和硬盘的使用效率,从而增加事务的吞吐率。

●减少事务的平均响应时间(即等待CPU的时间),短时间

事务无需等待长时间事务。

并发操作—在多用户共享系统中,多个用户同时存取同一数据的情形称为并发操作。

⏹并发操作可能带来的问题:

(1)破坏数据库的一致性

(2)破坏事务的隔离性

⏹并发控制的主要技术有封锁(Locking)、时间戳(Timestamp)

和乐观控制法,商用的DBMS一般都采用封锁方法。

封锁:指事务T在对某个数据对象操作之前,对其加锁。在T未释放锁之前,其他的事务不能更新此数据对象。

封锁协议:对数据对象加锁时,约定的规则。

相关文档
最新文档