什么是数据建模?类型(概念、逻辑、物理)
什么是数据建模?
数据建模 (Data modeling) 是为要存储在数据库中的数据创建数据模型的过程。该数据模型是数据对象、不同数据对象之间的关联以及规则的概念性表示。
数据建模有助于数据的可视化表示,并强制执行业务规则、法规遵从性和政府政策。数据模型确保命名约定、默认值、语义、安全性和数据质量的一致性。
DBMS中的数据模型
数据模型被定义为一个抽象模型,它组织数据描述、数据语义和数据的一致性约束。数据模型侧重于需要什么数据以及如何组织它,而不是将在数据上执行什么操作。数据模型就像建筑师的建筑蓝图,有助于构建概念模型并建立数据项之间的关系。
两种数据建模技术是:
- 实体关系(E-R)模型
- UML(统一建模语言)
我们将在稍后详细讨论它们。
本数据建模教程最适合初学者、入门者以及经验丰富的专业人士。
为什么要使用数据模型?
使用数据模型的主要目标是:
- 确保数据库所需的所有数据对象都得到准确表示。遗漏数据将导致创建错误的报告并产生不正确的结果。
- 数据模型有助于在概念、物理和逻辑级别设计数据库。
- 数据模型结构有助于定义关系表、主键和外键以及存储过程。
- 它提供了基础数据的清晰图景,数据库开发人员可以利用它来创建物理数据库。
- 它也有助于识别缺失和冗余数据。
- 虽然数据模型的初始创建既耗时又费力,但从长远来看,它使您的 IT 基础设施升级和维护更便宜、更快。
DBMS中数据模型的类型
数据模型类型:数据模型主要有三种类型:概念数据模型、逻辑数据模型和物理数据模型,每种都有特定的用途。数据模型用于表示数据及其在数据库中的存储方式,以及设置数据项之间的关系。
- 概念数据模型:该数据模型定义系统包含什么。此模型通常由业务利益相关者和数据架构师创建。目的是组织、确定范围和定义业务概念和规则。
- 逻辑数据模型:定义系统如何实现,而不考虑 DBMS。此模型通常由数据架构师和业务分析师创建。目的是开发技术规则和数据结构的地图。
- 物理数据模型:该数据模型描述了使用特定 DBMS 系统如何实现系统。此模型通常由 DBA 和开发人员创建。目的是实际实现数据库。
概念数据模型
概念数据模型是数据库概念及其关系的组织视图。创建概念数据模型的目的是建立实体、它们的属性以及关系。在此数据建模级别,关于实际数据库结构的详细信息几乎不存在。业务利益相关者和数据架构师通常会创建概念数据模型。
概念数据模型的 3 个基本组成部分是:
- 实体:现实世界中的事物
- 属性:实体的特征或属性
- 关系:两个实体之间的依赖或关联
数据模型示例
- 客户和产品是两个实体。客户编号和姓名是客户实体的属性。
- 产品名称和价格是产品实体的属性。
- 销售是客户和产品之间的关系。
概念数据模型的特征
- 提供全组织范围的业务概念覆盖。
- 此类数据模型是为业务受众设计的。
- 概念模型是独立于硬件规范(如数据存储容量、位置)或软件规范(如 DBMS 供应商和技术)进行设计和开发的。重点是将数据表示为用户在“现实世界”中看到的。
概念数据模型(称为域模型)通过建立基本概念和范围,为所有利益相关者创建通用词汇。
逻辑数据模型
逻辑数据模型用于定义数据元素的结构并建立它们之间的关系。逻辑数据模型为概念数据模型元素添加了更多信息。使用逻辑数据模型的优点是为物理模型奠定基础。但是,建模结构仍然是通用的。
在此数据建模级别,未定义主键或外键。在此数据建模级别,您需要验证并调整先前为关系设置的连接器详细信息。
逻辑数据模型的特征
- 描述单个项目的数据需求,但可以根据项目范围与其他逻辑数据模型集成。
- 独立于 DBMS 进行设计和开发。
- 数据属性将具有精确精度和长度的数据类型。
- 通常应用到 3NF 的范式化过程。
物理数据模型
物理数据模型描述了数据模型的数据库特定实现。它提供数据库抽象并帮助生成模式。这是因为物理数据模型提供了丰富的元数据。物理数据模型还通过复制数据库列键、约束、索引、触发器和其他 RDBMS 功能来帮助可视化数据库结构。
物理数据模型的特征
- 物理数据模型描述单个项目或应用程序的数据需求,尽管它可能根据项目范围与其他物理数据模型集成。
- 数据模型包含表之间的关系,这些关系处理关系的基数和可空性。
- 为 DBMS 的特定版本、位置、数据存储或项目要使用的技术而开发。
- 列应具有精确的数据类型、长度和默认值。
- 定义了主键和外键、视图、索引、访问配置文件和授权等。
数据模型的优缺点
数据模型的优点
- 设计数据模型的主要目标是确保功能团队提供的数据对象得到准确表示。
- 数据模型应足够详细,可用于构建物理数据库。
- 数据模型中的信息可用于定义表、主键和外键以及存储过程之间的关系。
- 数据模型帮助企业在组织内部和组织之间进行沟通。
- 数据模型有助于在 ETL 过程中记录数据映射。
- 帮助识别用于填充模型的正确数据源。
数据模型的缺点
- 开发数据模型需要了解物理数据存储的特性。
- 这是一个导航系统,会产生复杂的应用程序开发和管理。因此,它需要了解传记事实。
- 即使对结构进行了小的更改,也需要修改整个应用程序。
- 在 DBMS 中没有固定的数据操作语言。
结论
- 数据建模是为要存储在数据库中的数据开发数据模型的过程。
- 数据模型确保命名约定、默认值、语义、安全性和数据质量的一致性。
- 数据模型结构有助于定义关系表、主键和外键以及存储过程。
- 有三种类型:概念型、逻辑型和物理型。
- 概念模型的主要目标是建立实体、它们的属性以及它们的关系。
- 逻辑数据模型定义了数据元素的结构并建立了它们之间的关系。
- 物理数据模型描述了数据模型的数据库特定实现。
- 设计数据模型的主要目标是确保功能团队提供的数据对象得到准确表示。
- 最大的缺点是即使对结构进行小的更改也需要修改整个应用程序。
- 通过阅读本数据建模教程,您将从基础概念学起,例如什么是数据模型?不同类型数据模型的介绍、优缺点以及数据模型示例。