发现、分析和确定数据需求的过程,用一种称为数据模型的精确形式表示和传递这些数据需求。过程是循环迭代的,可能包括概念、逻辑和物理模型。
关系模式、多维模式、面向对象模式、事实模式、时间序列模式、NoSQL模式。根据描述详细程度不同,可分为:概念模型、逻辑模型、物理模型。
确认并记录不同视角对数据需求的理解,确保应用程序更符合当前和未来的业务需求,为更多数据应用和数据管理奠定基础,例如主数据管理和数据治理项目。
现有的数据模型和数据库;数据标准;数据集;初始数据需求;原始数据需求;数据架构;企业分类法;
概念、逻辑、物理数据模型
命名规范,数据库设计规范,数据库类型选择;
数据建模工具、数据血缘工具、数据分析工具、元数据资料库、数据模型模式(基本模式、套件模式、整合模式)、行业数据模型。
数据模型校验指标
对事物分类或分配事物类型的数据,如颜色、型号;
实施操作流程所需的基本数据,如产品、客户。资源实体有时被称为参考数据;
在操作过程中创建的数据,如客户订单。事件实体有时被认为交易型业务数据;
通过销售系统,传感器生成,用于分析趋势。
此4类为静态数据,部分动态数据也可建模,如系统的方案。
实体、关系、属性、域
在数据建模之外,有别于其他事物的一个事物。大多数数据模型都包含基本相同的组件:实体、关系、属性和域;在数据建模里,实体是一个组织收集信息的载体,名词:谁、什么、何时、何地、为什么、怎么办、度量,一般使用矩形表示,矩形中间是实体名词。实体实例是特定实体的具体化或取值。实体别名因模型类型不同而不同。关系模型用“实体”,维度模型用“维度”和“事实表”,面向对象类型用“类”和“对象”,基本时间模型用“中心”、“卫星”、“链接”,关系型用“文件”、“节点”。实体别名在概念模型中成为“概念”、“术语”。逻辑模型中称为“实体”。物理模型中称为“表”。实体的定义属于核心元数据,高质量的数据定义具有清晰、准确、完整三个特征。
关系是实体之间的关联,关系捕获概念实体之间的高级别交互、逻辑实体之间的详细交互、物理实体之间的约束。关系在维度模型中使用“导航路径”,在NoSQL中使用“边界”、“链接”。在概念和逻辑级别上用“关系”,在物理模型上使用“约束”、“引用”。关系在数建模图上表现为线条。
表明一个实体和其他实体参与建立关系的数量,有0,1,多;
关系中涉及实体的数目,有一元关系、二元关系、三元关系。一元关系:递归关系、自我引用关系;一对多:层级关系;多对多:网络关系或图表;二元关系:涉及两个实体的关系;三元关系:涉及三个实体的关系。
在物理模型建模中表示关系
定义、描述或度量实体某个方面的性质。属性可能包含域。属性在图中是在实体矩形内用列表描述。实体中属性的物理表现为表、视图、文档、图形或文件中的列、字段、标记或节点等。
是唯一标识实体实例的一个或多个属性的集合。可按键结构分为单一键、组合键、复合键、代理键;按照功能分为候选键、主键、备用键。
单一键:唯一标识实体实例的一个属性;代理键:也是单一键,表的唯一标识符,通常是一个计数器,由系统自动生成,一个整数,含义与数值无关,技术性,不应对用户可见。组合键:一组或两个多个属性组成的集合,一起达到唯一标识一个实体实例;复合键:包含一个组织键和至少一个其他单一键,组合键或非键属性。
超键:唯一标识实体实例的任何属性集;候选键:标识实体实例的最小属性集合,可能包含一个或多个属性,最小意味着候选键的任意子集都无法唯一标识实体实例。一个实体实例可以有多个候选键。候选键可以是业务键。业务键:业务专业人员用于检索、单个实体实例的一个或多个属性。业务键和代理键是互斥关系。主键:被选择为实体唯一标识符的候选键,备用键:是一个候选键,虽唯一,但没有被选为主键,可用于查找特定实体实例。
其主键仅包含只属于该实体的属性,用矩形符号表示。非独立实体指其主键于少包含一个其他实体的属性,至少含有一个表示关系用圆角矩形表示。
某一属性可被赋予的全部可能取值。提供一种将属性特征标准化的方法。域中的所有值都为有效的值,不在域中的值被称为无效的值。属性不应当含有其制定的域意外的值。可以附加的规则对域进行限制,限制规则称为约束。域可以使用多种不同的方式定义。如:数据类型、数据格式、列表、范围、基于规则。
常见的6种建模方法有:关系建模、维度建模、面向对象建模、基于事实建模、基于时间建模和非关系型建模。三层模型仅适用于关系型数据库,而概念模型和逻辑型模型可适用于其他数据库。基于事实的建模方法与此类似。对于维度建模方法,三层模型仅适用于关系型数据库和多维数据库。面向对象的建模方法仅适用于关系型数据库和对象数据库。基于时间的建模方法属于物理数据建模技术,主要用于关系型数据库环境的数据仓库。NoSQL方法严重依赖于底层数据库结构(文档、列、图、键值),因此也属于物理数据建模技术。
关系模型设计的目的是精确的表达业务数据,消除冗余。包括信息工程法、信息建模的集成定义IDEF1X、巴克表示法和陈氏表示法,常见的信息工程法,采用三叉线(鸭掌模型)来表示基数;
维度建模为了优化海量数据的查询和分析。使用轴表示法Axis Notation来建模。此模型中实体之间的连线表示用于说明业务问题的导航路径。
事实表:事实表中的行对应特定的数值型度量值,如金额,事实表占据了数据中大部分空间。
维度表:表示业务的重要对象,主要留住文字描述,维度是事实表的入口点和链接,充当查询或报表约束的主要来源。高速反范式的。占总数的10%左右,各个维度在每一行都有一个唯一的标识符,主要是代理键和自然键,维度也有些属性,渐变类的维度根据变化的速率和类型来管理变化,主要变化有覆盖,新行,新列。
雪花模型:将星型模型中的平面、单表、维度结构规范为相应的组件层次结构或网络结构。
粒度:事实表中当行数据的含义或描述,是每行都有的详细信息,关键步骤之一;
一致性维度:基于整个组织,一致性事实:使用跨多个数据集市的标准化术语;
UML:统一建模语言;
基于事实的建模:对象角色建模ORM,ORM2,完全面向通信的建模FCO-IM;
数据拱顶:是一组支持一个或多个业务功能领域,面向细节、基于时间且唯一链接的规范化表,数据拱顶是一种混合方式。综合了第三范式和星型模型的优点;数据拱顶模型专门为满足企业数据仓库的需求而设计的。有3种类型的实体:中心表、链接表、卫星表。设计的重点是业务的功能领域,中心表代表业务主键,链接表定义了中心表之间的事务集成,卫星表定义了中心表主键的语境信息。
锚建模:适合信息结构和内容随时间发生变化的情况。提供用于概念建模的图形语言,能扩展处理临时数据 ,它有锚、属性、连接、节点四个基本建模概念,锚模拟的是实体和事件,属性模型锚的特征,连接表示了锚之间的关系,节点模拟共享的属性。
非关系型数据库:1.文档数据库;2.键值数据库;3.列数据库;4.图数据库。
数据模型级别:1.概念模型,企业的真实世界视图,代表企业当前的最佳模式或经营方式;2.外模式;3.内模式,数据的机器视图。
概念数据模型CDM:用一系列相关主题域的集合来描述概要数据需求。概念数据模型仅包括给定的领域和职能中基础和关键的业务实体,同时也给出实体与实体之间关系的描述。
逻辑数据模型LDM:对数据需求的详细描述,通常用于支持特定用法的语境中(如应用需求)。不受任何技术或特定实施条件。在关系逻辑数据模型中,通过添加属性来扩展。属性通过规范化技术被分配给实体,每个属性和它所在实体的主键之间都有非常强的关系。在很多情况下,维度型逻辑数据模型是维度型概念数据模型的完全属性透视图。关系型逻辑数据模型捕获业务流程的规则,而维度型逻辑数据模型捕获业务问题以确定业务流程的运行状况和性能。
物理数据模型PDM:描述一种详细的技术解决方案,通常以逻辑模型为基础,与某一类硬件、软件和网络工具相匹配,与特定的技术有关。
逆规范化:将符合范式规则的逻辑数据模型经过慎重考虑后,转换成一些带冗余数据的物理表,逆规范化处理由于存在数据冗余而引入了产生数据错误的风险。一般逆规范化只会提高数据库查询性能或提升用户安全操作。原因:1.提前组合来自多个其他表的数据,以避免代价高昂的运行时连接;2.创建更小的,预先过滤的数据副本,以减少昂贵的运行时计算和/或大型表的扫描;3.预先计算和存储昂贵的数据计算结果,以避免运行时系统资源竞争。在维度建模中,常成为折叠、合并。
如果每个维度都被折叠为一个结构,生成的数据模型称为星型模型;如果维度没有被折叠,则生成的模型为雪花模型。
规范化:是运用规则将复杂的业务转化为规范的数据结构的过程。目标是保证每个属性只在一个位置出现,以消除冗余或冗余导致的不一致性。规范化规则根据主键和外键整理属性。规范化规则可归类到不同规范层次,对每一个层次可应用更细的方式和规范性来搜索正确的主键和外键。每个级别由一个独立的范式组成,并且每个相继级别不需要包含以前的级别。通常要求达到第三范式即可。
第一范式:每个实体都有一个有效的主键,每个属性都依赖于主键;
第二范式:每个实体都有最小的主键,每个属性都依赖于完整的主键;
第三范式:每一实体都没有隐藏的主键,属性都不依赖于键值外的任何属性(仅依赖于完整的主键),模型的规范化通常要求达到第三范式;
建模活动: