数据库设计
数据库设计基础知识
案例分析题+实践题目
基本概念
文件、数据库的联系和区别?数据库 复杂度高、冗余度低
数据库管理系统 DBMS:DDL、DML、数据库运行管理,组织和存储、建立和维护等。
数据模型,三要素:数据结构、数据操作、数据的约束条件
完整性:正确性和相容性
三级模式两级映射
三级模式:
- 概念模式:全体数据的逻辑结果
- 外模式:用户看到的部分数据,
个 - 内模式:存储记录的类型
逻辑独立性、物理独立性
关系表类型:
- 基本表
- 查询表
- 视图:虚拟表,有查询定义,简化用户操作,对机密数据提供安全保护。
完整性约束
实体完整性:主属性唯一、非空
参照完整性:外键
自定义完整性
触发器:
存储过程:数据库服务器上预先定义并编译。
关系代数
🌟🌟🌟除法计算方式:
规范化理论
完全函数依赖:
部分函数依赖:
传递依赖:
规范化理论
数据冗余、修改异常、插入异常、删除异常
第一范式:不存在复合属性
第二范式:非主属性完全依赖主键
第三范式:非主属性对码的传递函数依赖
数据库设计阶段
需求分析:需求规格说明书,数据流图,数据字典
概念结构设计:概念模型
- 抽象数据
- 设计局部ER图
- 合并取消冲突,设计初步ER模式
- 修改重构消除冗余,生成基本ER图
逻辑结构设计:关系模式
物理设计:
反规范化理论,加速读操作性能,通过添加冗余增加查询效率。反规范化的操作有:冗余列、派生列、表重组和表分割。
数据库实施
运行维护的主要内容
- 数据库性能监测和改善
- 数据库备份和故障恢复
- 数据库重组和重构
全量备份、差分备份、增量备份
NoSQL概述
数据持久层、数据分布层、数据逻辑层、接口层。
事务管理 ACID
原子性、一致性、隔离性、持续性
并发问题:
- 丢失跟新
- 幻读
封锁技术,X封锁(排他锁)、S封锁(共享锁)。
分布式数据库
优化策略:表与视图、索引、SQL优化
分布式数据库组成:
- 全局概念模式
- 分片模式
- 分布模式,4种分策略
- 局部概念模式
- 内模式
- 数据库
两阶段提交,2PC,表决+执行
三阶段提交:预提交