写在前面:很多小伙伴分不清数据架构与数据模型,同时如何做好数据建模也有一定的疑问
1. 数据架构、数据模型、数据建模区别与联系
企业架构包含业务架构、数据架构、应用架构和技术架构。数据架构的主要目标是有效的管理数据,以及有效地管理存储和使用数据的系统。
数据架构的构件包括:
- 当前状态的描述
- 数据需求的定义
- 数据整合的指引
- 数据管控策略中要求的数据资产管理规范
详细的数据架构设计文件是正式的企业数据模型,包含数据名称、数据属性、元数据定义、概念和逻辑实体、关系以及业务规则。
物理数据模型也属于数据架构文件,但是物理数据模型是数据建模和设计的产物,而不是数据架构的产物。
数据建模:是数据设计模型的过程,是动词。
数据模型:是数据建模的输出,是成果、是文件
数据架构:定义了对组织非常重要元素的标准术语和设计。企业数据架构的设计中包括业务数据描述,如数据的收集、存储、整合、移动和分布。企业的数据架构必须包含数据模型和数据流设计。可以将架构理解为数据模型的高层级概括,数据模型作为数据架构的子文件。
2. 数据架构
概念:识别企业的数据需求,并设计和维护总蓝图以满足这些需求。使用总蓝图来指导数据集成、控制数据资产,并使数据投资与业务战略保持一致。
以下是DAMA给出的数据架构语境关系图
从交付成果可以看出,数据架构包含数据流、企业数据模型,另外还包含数据架构设计、数据价值链、实施路线图。
2.1 工作内容
建立企业数据架构一般包括以下工作,这些工作可以串行或并行
1)战略。选择框架,制定方法,开发路线图。
企业数据架构路线图描述了架构3~5年的发展路径。考虑到实际情况和技术评估,路线图和业务需求共同将目标架构变为现实。企业数据架构路线图必须与企业架构路线图相整合,企业架构路线图包括:高层次里程碑事件、所需资源、成本评估、业务能力工作流划分。路线图应以数据管理成熟度评估为指导。
2)沟通与文化。建立沟通机制,并激励积极参与者。
参考系统集成项目管理中规划沟通、管理沟通、沟通控制。
3)组织:通过明确责任和职责来组织数据框架工作。
4)工作方法。与企业架构保持一致,在开发项目中定义最佳实践并执行数据架构工作。
5)结果。在总体路线图中产出数据架构产品。
2.2 实施指南
1)建立企业数据架构团队和举办问题讨论会。
2)生成数据架构构件的初始版本。例如,企业数据模型、企业范围数据流和路线图。
3)在开发项目中,形成和建立数据架构工作方式。
4)提高组织对数据架构工作价值的认识。
3. 数据模型
数据模型有助于组织能够理解其数据资产。数据可以采用多种不同的模式来表示。其中最为常见的6种模式分别是:关系模式、多维模式、面向对象模式、事实模式、时间序列模式和NoSQL模式。按照描述详细程度的不同,每种模式又可以分为3层模型:概念模型、逻辑模型和物理模型。每种模型都包含一系列组件,如实体、关系、事实、键和属性。
在DAMA中提到主题域模型,主题域结构则是基于现有逻辑数据模型向上提炼抽象而成。
每个企业数据模型既可以采用自上而下,也可以采用自下而上的方法进行构建。自上而下是从主题域开始,先设计主题,再逐步设计下层模型。而采用自下而上的方法时,通常推荐两种方法相结合,即自下而上地从分析现有模型开始,自上而下地设计主题模型,通过两种方法的结合来共同完成企业数据模型的设计工作。
3.1 数据建模
其实可以虚拟一套系统场景,利用建模软件多画几个图,就都熟悉了。建模软件有Navicat\Visio\Word及专业的数据库软件或数据治理软件。软件 多用几次,功能模块基本相似,有数据模型缩略图、模型转换、各种实体和关系的表示、导入导出等。主要还是理解需求及关系!
3.1.1 正向工程
正向工程是指从需求开始构建新应用程序的过程。首先需要通过建立概念模型来理解需求的范围和核心的术语;然后建立逻辑模型来详细描述业务过程;最后是通过具体的建表语句来实现物理模型。
创建概念数据模型步骤:选择模型类型、选择表示方法、完成初始概念模型......
创建逻辑数据模型步骤:分析信息需求、分析现有文档、添加关联实体、添加属性、指定域和键
创建物理数据模型步骤:解决逻辑抽象、添加属性细节、参考数据、代理键、规范化、索引、分区、视图
3.1.2 逆向工程
逆向工程是记录现有数据库的过程。物理数据建模通常是第一步,以了解现有系统的技术设计;逻辑数据建模是第二步,以记录现有系统满足业务的解决方案;概念数据建模是第三步,用于记录现有系统中的范围和关键术语。大多数数据建模工具支持各种数据库的逆向工程。
3.2 数据模型质量指标
DAMA数据治理中提及,也会经常拿来评估数据模型质量,如下图