DAMA数据管理知识体系
前言
该章节主要是针对DAMA数据管理知识体系的学习笔记中数据建模和设计,思维导图如下(考题10分),**本章建议多看书,我这里写的不是很详细。**如果想更进一步学习建模,最好看一些书,例如《Star Schema完全参考手册:数据仓库维度设计权威指南》、《数据仓库工具箱 维度建模权威指南(第3版)》等书。
文章目录
数据建模和设计
1.数据建模定义
- 数据建模是发现、分析和确定数据需求的过程,用一种称为数据模型的精确形式表示和传递这些数据需求。
- 建模:是指表结构的设计,表是用来存储数据的
2.业务驱动因素
- 提供有关数据的通用词汇表
- 获取、记录组织内数据和系统的详细信息
- 在项目中作为主要的交流沟通工具
- 提供了应用定制、整合,甚至替换的起点
数据模型对于有效的数据管理至关重要
3.交付成果
-
概念数据模型
- ER图
- 没有属性,有实体,偏向业务
-
逻辑数据模型
- 有实体,也有属性,偏向业务
-
物理数据模型
-
和技术选型是直接相关的
-
有许多的约束和命名规范
- 命名规范例如: a.字段里不能有空间(或者说是空格) b.长度不能超过30等
-
概念、逻辑模型:实体、属性、关系
物理模型:表、字段、外键
4.目标和原则
- 目标:数据建模的目标是确认和记录不同视角对数据需求的理解,从而使应用程序与当前和未来的业务需求更加紧密地结合在一起,并为成功地 完成广泛的数据应用和管理活动奠定基础,如主数据管理和数据治理计划。良好的数据建模会降低支持成本,增加未来需求重复利用的可能性,从而降低构建新应用的成本
- 原则:
- 格式化。数据模型是对数据结构和数据关系的简洁定义。能够 评估当前或者理想情况下业务规则对数据的影响情况。格式化的定义赋 予数据规范的结构,减少在访问和保存数据时发生异常的概率。通过展 现数据中的结构和关系,数据模型使数据更容易被使用。
- 范围定义。数据模型可以帮助解释数据上下文的边界,以及购 买的应用程序包、项目、方案或实施的现有系统。
- 知识保留记录。数据模型通过以书面的形式获取知识来保存系 统或项目的企业信息。
数据模型是元数据的一种重要形式。
5.建模的数据类型
- 类别信息。用于对事物进行分类和分配 事物类型的数据
- 资源信息。实施操作流程所需资源的 基本数据
- 业务事件信息。在操作过程中创 建的数据
- 业务事件信息。详细的交易信 息通常通过销售系统(商店或在线应用)生成。它还可以通过社交媒体 系统、其他互联网交互(单〈双〉击流等)和机器上的传感器产生
6.数据模型组件
6.1 实体
- 实体的定义:实体是一个组织收集信息的载体
- 高质量实体的定义的基本特征:
- 清晰
- 准确
- 完整
6.2 关系
- 1:n:可以
- n:1:可以
- n:n:不行,违反3NF, 需要个中间表
- 1:1:不行,两个实体要合并
在层级关系中,一个 实体最多拥有一个父实体(或称上级实体)。在关系模型中,子实体处 于关系中的“多”的一边,而父实体处于关系中的“一”的一边。在关系网 络中,一个实体可以拥有多个父实体。
6.3 属性
- 是一种定义、描述或度量实体某方面的性质
6.4 域
-
代表某一属性可被赋予的全部可能取值
-
提供了一种将属性特征标准化的方法
-
域的定义
- 数据类型
- 数据格式
- 列表,例如状态值
- 范围,例如订单时间范围
- 基于规则,例如物品价格高于物品成本
7.数据建模方法
- 关系建模
- 维度建模
- 事实表
- 维度表
- 星型模型
- 没有延展,只是扁平的维度表
- 雪花模型
- 维度表是有层级的
- 星型模型
- 面向对象建模
- 统一建模语言(UML)
- 基于事实建模
- 基于时间建模
- 非关系型(NoSQL)建模
- 文档数据库
- 列数据库
- 图数据库
- 键值数据库
注:在关系建模方法中,三层模型仅适用于关系型数据库,而概念模型和逻辑型模型可适用于其他数据库。
8.规范化和逆规范化
-
规范化:
- 第一范式(1NF)。
- 第二范式(2NF)。
- 第三范式(3NF)。 确保每一个实体都没有隐藏的主键。每个属性都不依赖于键值之外的任何属性(仅依赖于完整的主键)。
-
逆规范化
(1)原因:最重要的是提高性能
①提前组合来自多个其他表的数据,以避免代价高昂的运行时连接
②创建更小的、预先过滤的数据副本,以减少昂贵的运行时计算和/或大型表的扫描
③预先计算和存储昂贵的数据计算结果,以避免运行时系统资源竞争
(2)逆规范化只会在OLAP中使用,不会在OLTP中使用
(3)逆规范化是牺牲空间换取时间
9. 建立数据模型
9.1 正向工程
-
指从需求开始构建新应用程序的过程。 首先需要通过建立概念模型来理解需求的范围和核心的术语, 然后建立逻辑模型来详细描述业务过程,最后是通过具体的建表语句来实现物理模型
-
概念–>逻辑–>物理
ER图–DDL
ER图–直接在数据库里建表
9.2 逆向工程
- DDL到ER图 --直接从数据库到ER图
- 逆向工程是记录现有数据库的过程。 物理数据建模通常是第一步
是否三个层面都需要?不是
是否一定要按照这个顺序?不是
10.命名约定的最佳实践
- 对每种类型建模对象和数据库对象发布数据模型和数据库命名标准。命名标准对于实体、表、属性、键、视图和索引尤为重要。名称应该是唯一的并且尽可能具有描述性。
- 逻辑名称对业务用户应具有意义,应尽可能使用完整的单词,并避免使用除最熟悉的缩写之外的单词。
- 物理名称必须符合DBMS允许的最大长度,因此必要时将使用缩写。
- 逻辑名称通常情况下不允许使用任何的分隔符对单词进行分隔,但物理名称通常使用下划线作为单词分隔 符。
- **命名标准应该尽量减少跨环境的名称变化。**名称不应受其特定环境影响,如测试、QA或生产环境。
11.数据库设计中的最佳实践
DBA应牢记以下PRISM设计原则
- 性能和易用性
- 可重用性
- 完整性
- 安全性
- 可维护性
12.度量指标
数据模型计分卡
这个表是考试中会出现的,主要是问那一项是计分卡里没有的