DB面临的问题与目
|
· 数据复杂而多样
· 数据扩展问题
· 数据性能压力
· 数据冗余问题
· 数据一致性问题
· 数据完整性问题
· 数据分布问题
· 数据库设计的目标:逻辑、性能、可靠性、安全
|
数据库设计基础
|
· 实体-关系图
· UML与对象分析
· 数据流分析
· 数据字典
|
典型数据库的工作原理
|
· Oracle工作原理
· SQLServer 工作原理
· MySQL工作原理
|
数据库设计过程
|
· 分析当前的数据库
· 数据分析
· 概念模型设计
· 确定和定义业务规则
· 逻辑模型设计
· 审查数据完整性
· 物理模型设计
· 子模式设计
· 建立数据库
|
数据需求分析
|
· 数据业务需求
· 数据管理需求
· 数据存取需求
· 数据有关的性能需求
|
分析当前的数据库
|
· 逆向当前数据库为数据模型
· 开始认识当前的数据库
· 开展对当前数据库的分析
· 数据库问题识别
· 研究数据是怎样被收集的
· 研究信息是怎样被表示的
|
实体关系建模
|
· 发现实体方法
· 建立关系策略
· 实体属性的识别方法
· 实体约束的分析
|
面向对象的数据建模
|
· 面向对象分析
· 建立对象模型
· 对象模型向关系数据模型的映射
· 关系数据模型向对象模型的映射
· 映射的策略与开发框架的关系
|
表的设计原则
|
· 范式理论:1、2、3范式
· 表的划分粒度
· 表的关系:1-1,1-n,n-n
· 表的一致性和完整性
· 建立表的扩展能力
· 处理数据冗余
|
字段设计原则
|
· 字段的粒度
· 字段的数据类型
· 字段的长度和精度
· 字段的惟一性、空否
· 字段的约束
|
视图设计原则
|
· 视图作用
· 视图带来的好处
· 视图带来的问题
· 合理设计视图原则
|
数据约束原则
|
· 数据约束类型
· 检查约束原则
· 主键、外键设计原则
· 索引设计原则
· 存储过程设计原则
· 触发器设计原则
· 域的完整性与一致性原则
|
大数据量、并发数据访问的高性能设计
|
· 面向应用性能逻辑的数据结构调整
· 表级锁,和行级锁
· 表的纵向和横向切割
· 表冗余实现的高性能
· 触发器,和存储过程的应用
· 物理数据库参数调整
· SQL算法优化
|
使用PowerDesigner进行数据库设计
|
· 创建和管理概念数据模型
· 定义业务规则
· 建立数据项,实体和实体属性
· 创建和定义实体间的联系,定义联系的维度,依赖性,角色和存在性
· 定义和使用域和继承
· 创建物理数据模型
· 将CDM对象转换成PDM对象
· 将物理数据模型具体化
· 创建视图,候选键和索引
· 创建数据库建立脚本
· 通过触发器,存储过程,视图和业务规则保证数据的完整性
· 逆向工程
· 物理模型的同步
· 使用包和示意图
· 管理模型和生成报表
|