2022-05-24 20:48 浏览量:493
一 概述
通过使用数据模型,开发人员、数据架构师和业务分析师等各种利益相关者可以在构建数据库和仓库之前就他们将捕获的数据以及他们希望如何使用这些数据达成一致。
数据模型指定要捕获哪些信息、如何存储它以及它如何与业务的各个组件相关联。数据建模的最终目标是为整个组织建立清晰的数据标准。例如,电子商务网站的模型可能会指定将捕获的客户数据。它将定义如何标记该数据及其与产品信息和销售流程的关系。
就像房子的蓝图一样,当事情变得复杂时,数据模型在开始建造之前定义了要建造什么以及如何建造。这种方法可以防止数据库设计和开发错误、捕获不必要的数据以及在多个位置复制数据。
二 数据模型类型
数据模型分为三类:概念模型、逻辑模型和物理模型。它们帮助利益相关者围绕数据项目的原因、方式和内容保持一致。每种类型的模型在数据建模过程中服务于不同的目的和受众。
1概念数据模型
概念数据模型以可视化方式管理正在建模的业务流程的概念和规则,而无需深入了解技术细节。可以使用此可视化模式来使业务利益相关者、系统架构师和开发人员在项目和业务需求方面保持一致:数据系统将包含哪些信息、元素应如何相互关联以及它们的依赖关系。
通常,概念模型表示系统内容、组织和相关业务规则的高级视图。例如,电子商务业务的数据模型将包含供应商、产品、客户和销售,业务规则是每个供应商需要提供至少一种产品。
概念模型没有标准格式。重要的是,它可以帮助技术和非技术利益相关者就其数据项目的目的、范围和设计达成一致。以下图形都是概念数据模型的示例。
2逻辑数据模型
逻辑数据模型基于概念模型并定义项目的数据元素和关系,可以看到数据库中特定实体的名称以及它们的属性。继续使用电子商务示例:逻辑模型显示产品是通过“产品 ID”标识的,具有描述、类别和单价等属性。
数据架构师和业务分析师使用逻辑数据模型来规划数据库系统中的实施。以下是逻辑数据模型的示例。
3物理数据模型
物理数据模型变得技术化。数据库分析师和开发人员使用它来设计数据库和相关数据结构。该模型指定了将存储的数据类型以及技术数据要求。
数据类型规范的例子是:一条数据是整数(不带小数点的数字)还是浮点型(带小数位的数字)。技术要求包括有关存储需求、访问速度和数据冗余的详细信息——将一条数据存储在多个位置以提高持久性并提高查询性能。
在实践中,只有非常大的项目,比如为供应链业务建模,才会从概念模型转向逻辑模型再到物理模型。大多数其他项目跳过概念阶段,将大部分时间花在逻辑建模上。一些团队甚至同时涵盖物理阶段的元素,因为从事逻辑模型的人员也负责技术实施。
三 三大数据建模技术
有许多不同的技术来设计和构建数据库。应该探索这些技术,并在概念阶段结束时确定最适合的技术。这些数据建模方法定义了数据库的结构化方式,并与可用于管理数据项目的格式或技术类型密切相关。
1.关系数据建模
在关系数据模型中,数据存储在表中,其中特定元素链接到其他表中的信息。实体可以具有一对一、一对多或多对多的关系。
关系数据库通常使用 SQL(结构化查询语言)语言,用于访问和管理数据。它们经常用于CRM系统以及其他类型的交易处理。
实体-关系模型(有时称为 ER 模型)类似于关系模型。它展示了系统中不同元素之间的关系,但不涉及技术细节。可以在概念阶段使用 ER 模型来协调技术和非技术利益相关者。
2.维度数据建模
理解维度数据模型,可以想象一个立方体。立方体的每一面都代表尝试捕获的数据的一个方面。
例如,假设企业向不同的客户群销售多种产品,并且要评估一段时间内的销售业绩。可以将其展现为具有时间、产品和客户细分维度的数据立方体。通过在立方体的轴上上下左右移动,可以在所有这些维度上进行比较。我们将在任何时间看到这些产品的销售额如何相互比较以及不同的客户群。
在概念阶段使用立方体模型。这种多维数据集在逻辑阶段最常见的表现之一是“星型模式”,如下图所示。起初,它可能看起来像一个关系模型。尽管如此,星型模式还是不同的,因为它有一个连接到许多其他节点的中心节点。
3.图数据建模
在概念阶段,大多数人在白板上绘制数据模型。这样的草图类似于图模型。它由“节点”和边组成——节点代表数据存储的位置,边代表节点之间的关系。这也是这种方法的主要优点:“你在白板上画的东西就是你存储在数据库中的东西。”
其他技术要求将概念阶段的输出转换为逻辑和物理实现的不同格式,例如,从 ER 转换为关系模型或从多维数据集模型转换为星型模式。图模型并非如此,可以使用 Neo4j 等技术直接实现它们,Neo4j 是一个原生图形数据库平台。
四数据模型管理的价值
数据模型是一种可视化的表示,它将抽象的想法转化为技术实施计划。它们有助于避免代价高昂的数据基础架构拆除和重建,因为数据建模人员需要在创建数据库和仓库之前考虑他们需要的数据、数据关系、数据架构,甚至项目是否可行。
数据模型还有助于数据治理和法律合规性。它要求从项目一开始就设置标准,这样团队就不会遇到冲突的数据集,这些数据集需要在使用之前进行清理,或者更糟糕的是,根本无法使用。
数据模型和标准化有助于避免在整个组织中以近十种不同方式标记的注册字段之类的情况。
它还有助于在建模时识别敏感信息(社会保险号、密码、信用卡号),以便在开始构建之前让安全和法律专家参与进来。
安全、准确和高质量的数据为组织中的各个团队带来了一系列现实的好处。产品团队可以更快地迭代并构建身临其境的用户体验。分析和商业智能团队无需繁重的变通方法即可创建查询。营销团队可以通过根据用户行为和特征个性化消息传递来改进工作。
作者:晓晓
来源:数据驱动智能