数据库设计
- 基本步骤
- 确定系统边界是数据库设计的需求分析
- 需求分析
- 设计DFD图通常采用自顶向下的方式
- 需求分析阶段生成的是数据流图DFD和数据字典DD
- 数据流图描述对数据的处理流程
- 概念结构设计
- 步骤
- 选择局部应用
- 逐一设计分E-R图
- 存在冲突
- E-R图合并
- 解决问题
- 不能发现设计能否满足信息需求
- 对现实事物抽象的方法:
- 依照需求对信息进行分类、聚集和概括
- 聚集:确定实体具有的属性
- 概括:根据已知类型定义新类型
- E-R图
- 采用自底向上的方式进行设计
- 可以将现实世界的信息抽象为实体以及实体之间的联系
- 【错】E-R图建立在关系数据库的基础上
- 说法
- 概念结构设计(ER)与具体DBMS无关
- 联系可以看成是实体,与另一实体产生联系,称为聚合
- 派生属性(虚线)不会被转换到关系模式中,例如年龄
- 分E-R图
- 冲突
- 属性冲突
- 同一属性存在于不同的分图上,属性的类型、取值等不一致
- 命名冲突:
- 相同意义的属性在不同的分图上有不同的命名
- 结构冲突:
- 某一图中为实体,某一图中为属性
- 优化:取属性的并集,例如,给员工加职称属性并删除教师表
- 实体之间的联系
- 弱实体
- 强实体
- 关系:弱实体必须以强实体的存在为前提
- 属性冲突
- 冲突
- 步骤
- 逻辑结构设计
- 物理设计
- 应用程序设计
- 系统实现
- 实施与维护
- 数据库运行和事务管理
- SQL优化
- 使用不相关子查询代替相关子查询
- 尽量使用union all
- 逻辑设计
- 更新较少,引入物化视图(计算和内容)
- 频繁访问的字段单独构成表
- 频繁访问的表进行合并
- 无需全部达到BCNF
- 存储策略配置
- 表和索引放到不同硬盘上,并行操作可以提高性能
- 数据库系统的运行和维护
- 数据库监控
- 不属于监控的对象是:网络监控
- DBS的运行标准
- 包括:单笔交易时间,缓存命中率,CPU平均空闲率
- 不包括表空间的大小
- 数据库监控
- SQL优化
- 数据库系统的实施
- 多值属性
- 独立为关系模式,其码作为实体的外码
- 管理信息系统的输入
- 根本原则:提高可靠性,减少错误
- 新旧系统的转换
- (错)异构系统在不同网络协议下的转换
- 同一数据库系统在不同主机平台之间的迁移
- 安全性
- 审计
- 通过审计日志找出用户对数据库的所有操作,找出非法存取数据的人等
- 指不合法的使用造成的数据泄露、更改和破坏
- 完整性
- 指数据库的正确性和相容性
- 并发控制
- 在多用户共享的系统中,保证用户的数据不受破坏
- 多值属性