数据建模和设计
定义
数据建模是发现、分析和确定数据希求的过程,用一种称为数据模型的精确形式标识和传递这些数据需求。这个过程是循环迭代的,可能包括概念、逻辑、物理模型
业务驱动因素
- 提供有关数据的通用词汇表
- 获取、记录组织内数据和系统的详细信息
- 在项目中作为主要的交流沟通工具
- 提供了应用定制、整合,甚至替换的起点
建模方法
- 关系建模
- 多维模型
- 面向对象模型
- 基于事实建模
- 基于时间建模
- 菲关系型建模: 文档数据库、健值数据库、列数据库、图数据库
数据模型组件
- 实体
- 关系
- 属性
- 域
范式设计层次
模型的规范化通常要求达到第三范式,BCNF/第四范式/第五范式在实践中几乎不用,不列出
- 第一范式: 每个实体都有一个有效的主键,每个属性都依赖于主键
- 第二范式: 每个实体都有最小的主键,每个属性都依赖于完整的主键
- 第三范式: 每个实体都没有隐藏的主键,属性都不依赖于健值意外的任何属性(仅依赖完整主键)
逆规范化原因
- 提前组合来自多个其他表的数据
- 创建更小的、预先处理的数据副本,减少昂贵的运行时计算或大型表扫描
- 预算计算和存储昂贵的数据计算结果,以避免运行时系统资源竞争
数据建模活动
规划数据建模
建立数据模型
概念数据模型建模
- 选择模型类型
- 选择标识方法
- 完成初始化概念模型
- 收集组织中最高级的概念
- 手机这些与概念有关的活动
- 合并企业术语
- 获得签署
逻辑数据模型建模:
- 分析信息需求
- 分析现有文档
- 添加关联实体
- 添加属性
- 指定域
- 指定键
物理数据模型建模:
- 解决逻辑抽象
- 添加属性细节
- 添加参考数据对象
- 指定代理键
- 逆规范化
- 建立索引
- 分区
- 创建视图
审核数据模型
维护数据模型
度量指标
- 模型多大程度上反映了业务需求? 15
- 模型的完整性如何?(需求完整性,元数据完整性) 15
- 模型与模式的匹配度是多少? 10
- 模型的结构如何? 15
- 模型的通用性如何?10
- 模型遵循命名标准的情况如何? 5
- 模型的可读性如何? 5
- 模型的定义如何? 10
- 模型与企业数据架构的一致性如何? 5
- 与元数据的匹配程度如何? 10