助推智能体企业 观看 Think 主题演讲

什么是数据建模?

什么是数据建模?

数据建模是创建整个或部分信息系统的可视化表示的过程,表示数据点和结构之间的连接。

数据建模的目标是说明系统中使用和存储的数据类型以及这些数据类型之间的关系。它还描述了数据可以如何分组和组织,以及其格式和属性。

数据模型围绕业务需求建立。规则与需求通过业务利益相关者的反馈进行预先定义,以便将其融入新系统的设计或现有系统的迭代优化中。

可以在各种抽象级别上对数据进行建模。该流程始于向项目利益相关者及终端用户收集业务需求信息。随后,这些业务规则将被转化为数据结构,从而形成具体的数据库设计方案。数据模型好比路线图、建筑蓝图或任何能深化设计理解的规范化图表。

数据建模采用标准化的模式和正式的技术。这种方法提供了一种通用、一致且可预测的方式来定义和管理整个组织甚至更广范围内的数据资源。

理想情况下,数据模型是活文档,会随着业务需求的变化而演进。它们在支持业务流程以及规划 IT 架构和策略方面发挥着重要作用。数据模型可以与供应商、合作伙伴或行业同行共享。

数据模型类型

如同任何设计流程一样,数据库和信息系统设计从高抽象层级开始,然后变得更加具体和明确。数据模型通常可分为三类,它们根据抽象程度的不同而有所区别。该过程将从概念模型开始,进展到逻辑模型,最后以物理模型结束。每种类型的数据模型将在后续章节中更详细地讨论:

概念数据模型

它们也被称为领域模型,提供系统将包含什么、如何组织以及涉及哪些业务规则的 高层次视图。概念模型是作为收集初始项目需求过程的一部分创建的。

通常,它们包括实体类(定义对业务而言在数据模型中需要表示的重要事物类型)、其特征和约束,以及它们之间的关系。它们还包含相关的安全性和数据完整性要求。这些元素共同定义了数据在模型中的结构化和治理方式。任何标记通常都很简单。

概念数据建模图

逻辑数据模型

它们的抽象程度较低,提供所考虑领域中概念和关系的更详细信息。遵循几种正式数据建模符号系统之一。这些符号指示数据属性,例如数据类型及其对应长度,并展示实体之间的关系。

逻辑数据模型不指定任何技术系统要求。在敏捷或  DevOps  实践中,这一阶段常被省略。逻辑数据模型在高度程序化的实施环境中,或对于本质上面向数据的项目(如 数据仓库 设计或报告系统开发)可能很有用。

逻辑数据建模图

物理数据模型

它们 提供数据在数据库内如何物理存储的模式。因此,它们的抽象程度最低。 它们提供可实施为关系数据库的最终设计,包括展示实体之间关系的关联表。该设计还指定了用于维护这些关系的主键和外键。 物理数据模型可以包含数据库管理系统 (DBMS) 特有的属性,包括性能调优。

物理数据建模图

数据建模流程

作为一门学科,数据建模要求利益相关者以高度精细化的方式审视数据处理与存储机制。不同的数据建模技术遵循特定规范,这些规范界定了数据表征的符号体系、模型布局的逻辑结构,以及业务需求的传达方式。所有方法均提供规范化的工作流,这些流程包含以迭代方式执行的任务序列。这些工作流通常是这样的:

  1. 标识实体。数据建模的过程始于识别要建模的数据集中所表示的事物、事件或概念。每个实体都应是内聚的,并在逻辑上独立于所有其他实体。
  2. 确定每个实体的关键属性。 每个实体类型都能与其他所有类型区分开来,因为它拥有一个或多个唯一特性,这些特性称为属性。 例如,一个名为“客户”的实体可能拥有诸如名字、姓氏、电话号码和称呼等属性。一个名为“地址”的实体可能包含街道名称和编号、城市、州、国家和邮政编码。
  3. 确定实体之间的关系。 数据模型的最初草案将规定每个实体与其他实体之间关系的性质。在前面的例子中,每个客户“居住在”一个地址。如果该模型扩展到包含一个名为“订单”的实体,那么每个订单将发货和开票到一个地址。这些关系通过统一建模语言 (UML) 进行记录。
  4. 将属性完整地映射到实体。 这种 方法将确保模型反映出业务将如何使用数据。几种正式的数据建模模式被广泛使用。面向对象的开发者经常应用分析模式或设计模式,而来自其他业务领域的利益相关者则可以转向其他模式。
  5. 根据需要分配键,并确定规范化程度,以平衡减少冗余的需求与性能要求。 规范化是一种组织数据模型(及相应数据库)的技术,它给数据组分配称为键的数字标识符,用以表示数据组之间的关系,从而避免重复数据。例如,如果为每个客户分配一个键,则该键可以同时链接到他们的地址和订单历史记录,而无需在客户名称表中重复这些信息。 规范化减少了数据库所需的存储空间,但这可能会以查询性能为代价。
  6. 最终确定并验证数据模型。数据建模是一个迭代过程,应随着业务需求的变化而不断重复和完善。
AI Academy

数据管理是生成式 AI 的秘诀吗?

深入了解为什么高质量数据对于成功使用生成式 AI 至关重要。

数据建模类型

数据建模随数据库管理系统的发展而演进,随着业务数据存储需求的增长,模型类型的复杂性也在增加。以下是几种模型类型:

  • 层次数据模型 以树状格式表示一对多关系。在此类模型中,每条记录有一个单独的根或父节点,该根或父节点映射到一个或多个子表。该模型在 IBM Information Management System (IMS) 中实现,该系统于 1966 年推出并迅速得到广泛应用,尤其在银行业。尽管这种方法比后来开发的数据库模型效率低,但它仍在可扩展标记语言 (XML) 系统和地理信息系统 (GIS) 中使用。
  • 关系数据模型 最初由 IBM 研究员 E.F. Codd 于 1970 年提出。如今,它们仍广泛应用于企业计算中常见的多种关系数据库。关系数据建模不需要详细理解所用数据存储的物理特性。在这种模型中,数据段通过表显式连接,从而降低数据库的复杂性。

关系数据库通常采用结构化查询语言 (SQL) 进行数据管理。这些数据库在维护数据完整性和最小化冗余方面表现出色。它们常用于销售点系统以及其他类型的事务处理。

  • 实体-关系 (ER) 数据模型通过规范化图示呈现数据库中实体间的关联关系。数据架构师运用多种实体关系建模工具来构建可视化图谱,以传达数据库设计的核心目标。
  • 随着面向对象编程在 20 世纪 90 年代中期兴起,面向对象数据模型也逐渐受到关注。所涉及的“对象”是现实世界实体的抽象。对象按类层次结构进行分组,并具备与之关联的特征属性。面向对象的数据库可以包含表,但也可以支持更复杂的数据关系。这种方法用于多媒体和超文本数据库以及其他用例。
  • 维度数据模型 由 Ralph Kimball 开发,旨在优化 数据仓库中用于分析目的的数据检索速度。关系模型和 ER 模型强调高效存储,而维度模型则增加冗余,以便更容易地定位用于报告和检索的信息。这种建模通常用于 联机分析处理 (OLAP)  系统。

两种常见的维度数据模型是星型模式,其中数据被组织成事实(可度量项)和维度(参考信息)。在此模型中,每个事实被其相关维度以星状模式包围。另一种是雪花模式,它类似于星型模式,但包含其他层级的关联维度,使得分支结构更加复杂。

数据建模的优点

数据建模使开发者、数据架构师、业务分析师和其他利益相关者能够更轻松地查看和理解数据库或数据仓库中数据之间的关系。此外,它还可以:

  • 减少软件和数据库开发中的错误。
  • 提升全企业范围内文档与系统设计的一致性。
  • 提高应用程序和数据库性能。
  • 简化整个组织的数据映射。
  • 促进开发团队与商业智能团队之间的高效协作。
  • 在概念、逻辑和物理层面简化并加快数据库设计过程。

数据建模工具

当前,众多商用及开源计算机辅助软件工程 (CASE) 解决方案已获广泛应用,涵盖多种数据建模、图表生成及可视化工具。部分示例如下:

  • erwin Data Modeler 是一个基于整合 DEFinition for信息建模 (IDEF1X) 数据建模语言的数据建模工具,现在支持包括维度方法在内的其他符号方法。
  • Enterprise Architect 是一种可视化建模和设计工具,支持企业信息系统和架构以及软件应用程序和数据库的建模。它基于面向对象的语言和标准。
  • ER/Studio 是一款数据库设计软件,兼容当今多款主流数据库管理系统。它支持关系数据建模和维度数据建模。
  • 免费数据建模工具包括开源解决方案,例如 Open ModelSphere。
几个图标(相机、音量旋钮和剪贴板)排成螺旋状的 3D 渲染图
相关解决方案
数据科学工具和解决方案

使用数据科学工具和解决方案,利用数据、算法、机器学习和 AI 技术发现模式,并构建预测。

深入了解数据科学解决方案
IBM Cognos Analytics

推出 Cognos Analytics 12.0,人工智能驱动洞察分析可以更好地做出决策。

深入了解 Cognos Analytics
数据和分析咨询服务

通过 IBM Consulting 发掘企业数据的价值,建立以洞察分析为导向的组织,实现业务优势。

了解分析服务
采取后续步骤

使用数据科学工具和解决方案,利用数据、算法、机器学习和 AI 技术发现模式,并构建预测。

  1. 深入了解数据科学解决方案
  2. 深入了解分析服务