- 数据库的发展
首先数据库是什么
1 允许用户自己定义结构 逻辑结构
2 支持大数据持久存储
3 支持合适的查询语言 数据查询和修改能有效的访问
4 支持不同用户的查询和修改
5 支持机器发生故障时发生 有效的恢复数据
1.1早期的数据库发展
基于文件系统 ,不支持合适的查询语言, 在修改数据时不能有效的访问。
关系数据库系统
越来越小的系统 个人计算机的发展
越来越大的系统 存储数据越来越大
信息集成:把相关的信息放在一个数据库里。
2 数据库管理系统概述
1在顶部有两个角色
用户用dbms 发送查询 修改
数据库管理员 管理数据库结构或模式
*数据定义语言描述
第二种方式比较简单 。 数据库管理员 ,发出ddl命令 ,通过ddl编译器 到达执行引擎 通过索引/文件记录管理器到达缓存区管理器 读写页到达存储管理器 到达存储器。
查询处理概述
通过查询编译器 完成语法分析和优化
事务管理器分为两种
- 并发控制管理器 保证事务的原子性和独立性
- 日志和恢复管理器 保证事务的持久性
存储器和缓冲区
各个数据组件:
- 数据:数据库本身的内容
- 元数据:描述数据库结构及约束内容
- 日志记录:对数据库的修改信息,改数据支持数据库的持久性。
- 统计数据
- 索引 支持数据库有效存取的结构
事务处理:
- 记日志
- 并发控制
- 消除死锁
备注:事务acid A 原子性 c 一致性 I 独立性 d 持久性
查询处理器
分为三种
- 查询编译器 :转化为内部结构
- 查询分析器 :转化为查询语法树
- 查询预处理器 :语义检查 及转化为内部代数操作符树
- 查询优化器 :转化为操作序列
执行引擎:桥梁作用