1 考点精讲

1.1 关系模型

1、关系代数

(1)并(结果为二者元组之和去除重复行)

(2)交(结果为二者重复行)

(3)差(前者去除二者重复行):以元组行作为整体进行判断,类似于集合运算。

(4)笛卡尔积:结果列数为二者属性列数之和,行数为二者元组行数的乘积。两个表做笛卡尔积,结果表的元组由前表与后表拼接而成,不同的排列组合形成不同的结果元组。

(5)投影(筛选符合条件的属性列)

(6)选择(筛选符合条件的元组):属性名可以依次标序号,直接以数字形式出现在表达式中。

(7)自然连接:结果列数为二者属性列数之和减去重复列,行数为二者同名属性列其值相同的结果元组。

1.2 并发控制

1、事务的特性(ACID)

(1)原子性(Atomicity) 是指事务包含的所有操作要么全部成功,要么全部失败回家,这些操作是一个整体,不能部分的完成。

(2)一致性(Consistency) 是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,

(3)隔离性(Isolation) 是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,无论发生何种故障,都不应对其有任何影响。

(4)持久性/永久性(Durability)是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,无论发生何种故障,都不应对其有任何影响。

2、封锁协议

(1)共享锁(S锁):又称读锁

(2)排他锁(X锁):又称写锁

(3)一级封锁协议。事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。防止丢失修改。

(4)二级封锁协议。一级封锁协议加上事务T在读取数据R之前先对其加S锁,读完后即可释放S锁。防止丢失修改,还可防止读“脏”数据。

(5)三级封锁协议。一级封锁协议加上事务T在读取数据R之前先对其加S锁,直到事务结束才释放。可防止丢失修改,防止读脏数据与防止数据不可重复读。

1.3 分布式数据库

1、透明性分类

透明性分类

核心

分片透明

用户不必关心数据分不出片,怎么分片

位置透明

用户不必关心数据存放在何处

复制透明

用户不必关心各个节点数据的复制与同步更新

逻辑透明

用户不必关心局部DBMS支持哪种数据模型,使用哪种语言

数据分片应该遵循如下准则:完整性、重构性、不相交性。

1.4 数据仓库技术

1、数据库和数据仓库对比

数据库

数据仓库

面向应用:按应用组织数据

面向主题:按主题组织数据

零散的:一个应用对应一个数据库

集成的:整个企业对应一个数据仓库

CRUD:增删改查

相对稳定:查询为主、基本无修改与删除

解决当下应用问题

反应历史变化(时变的):各个阶段信息都有,并可预测未来趋势

2、OLTP和OLAP

维度

OLTP

OLAP

用户

操作人员,低层管理人员

决策人员,高层管理人员

功能

日常操作处理

分析决策

DB设计

面向应用

面向主题

数据

当前的,最新的,细节的,二维的,分立的

历史的、聚集的、多维的、集成的、统一的

存取

读写数十条记录

读上百万条记录

工作单位

简单的事务

复杂的查询

用户数

多

少

DB大小

MB或GB级

GB或TB级

1.5 非关系型数据库NoSQL

1、适用场景

NoSQL数据库以下场景比较适用:数据模型比较简单;需要灵活性更强的IT系统;对数据库性能要求较高;不需要高度的数据一致性;对于给定key,比较容易映射复杂性的环境。

2、NoSQL数据库与关系型数据库混用的数据一致性解决方案

(1)实时同步方式,在数据查询时,首先从缓存中查找,如果查询不到再从Mysql数据库中查询,并将查询结果保存到缓存,更新数据时,首先更新数据库,再将缓存中相应数据设置为过期或失效,或者更新缓存中的相应数据。

(2)异步队列方式,比如采用消息中间件。

(3)采用自定义函数的方式,在主数据库中进行编程,利用触发器的方式进行数据同步。

(4)使用专门数据同步工具。

1.6 SQL语法

处理子类

语法

升序或降序

OEDER BY 字段名 DESC|ASC

统计

COUNT()

计算一列中值的总和

SUM()

计算一列值的平均值

AVG()

求一列值的最大值

MAX()

求一列值的最小值

MIN()

对结果分组

GROUP BY ()

2.1 非规范化存在哪些问题?

规范化是为了解决数据冗余,删除异常,插入异常,更新异常等问题。

插入异常:未提供主键,当主键为空时,不能进行插入操作。

2.2 反规范化的技术手段有哪些?

增加冗余列是指在多个表中具有相同的列,它常用来在查询时避免连接操作。

增加派生列指增加的列来自其他表中数据,由他们计算生成。

分割表:水平分割与垂直分割。水平分割,有些记录常要查询,有些记录不常用,如历史记录。垂直分割,把主码与某些常用的字段组成一个表,把主码与另一些字段组成另一个表。

2.3 候选键,主键,外键之间的关系?

候选键是能够唯一标识元组却无冗余的属性组合,可以有多种不同的候选键,在其中任选一个作为主键。外键则是其他关系的主键。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐