摘要:本篇博客简述了学习数据库中有关数据模型的基本知识。

目录

一、数据模型

二、数据模型的三要素

三、概念模型

四、常见的数据模型

1.层次模型和层次数据库

2.网状模型和网状数据库

3.关系模型和关系数据库

 4.NoSQL


一、数据模型

什么是数据模型?

  • 数据模型是现实世界数据特征的抽象
  • 数据模型是用来描述数据、组织数据的。
  • 数据模型是数据库系统的核心基础

 什么是数据建模?

数据建模是将现实世界的数据抽象到机器世界的技术,数据建模过程的两步抽象

  •         将现实世界抽象为信息世界:现实世界的客观对象抽象为概念模型
  •         将信息世界转换为机器世界:概念模型转换为某一数据管理系统支持的数据模型

二、数据模型的三要素

数据模型的三要素是指数据结构数据操纵完整性约束

 1.数据结构

数据结构是用来描述数据库组成对象以及对象之间的联系

数据结构是对系统静态特性的描述

 2.数据操纵

数据操作是对数据库中各种对象的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。如查询、更新(包括插入、删除、修改)

数据操作主要用于描述系统的动态特性

 3.完整性约束

完整性约束的本质是一种约束规则

完整性规则是对数据模型中数据的一种制约规则,限定符合数据模型的数据库状态,以保证数据的正确、有效和相容

三、概念模型

什么是概念模型?

概念模型是现实世界到机器世界的一个中间层次,用于信息世界的建模。

它是数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。

对概念模型的基本要求是:

  • 较强的语义表达能力
  • 简单、清晰、易于用户理解

 信息世界的基本概念有哪些?

实体:客观存在并可相互区别的事物,如人、事、物和抽象的概念等。

属性:实体所拥有的特性。

:唯一标识实体的属性集合。

实体型:用实体名及其属性名的集合来抽象和刻画同类实体。如在学校的数据库管理系统中,“学生”就是一个实体型。它规定了学生这个群体所共有的属性,如学号、姓名、性别、专业等。

实体集:同一类型实体的集合。

联系:实体内部与外部之间的联系。通常有一对一、一对多和多对多等类型。

四、常见的数据模型

1.层次模型和层次数据库

层次模型以“树结构”来表示数据记录之间的联系,是层次数据库的基本模型

        层次模型是数据库系统中最早出现的数据模型,采用树形结构来表示各类实体以及实体间的联系。

        除根节点外,其他结点有且只有一个父亲结点,层次数据库的典型代表是IBM公司的IMS数据库。

         结点之间通常存在一对一一对多的关系

层次模型的优点缺点

  • 优点:数据结构简单清晰、查询效率高
  • 缺点:不能表示非层次关系的数据、对插入和删除操作的限制多

2.网状模型和网状数据库

网状模型以“图结构”来表示数据记录之间的联系,是网状数据库的基本模型

        网状模型采用图形结构来表示各类实体以及实体间的联系。允许一个以上的节点无父亲节点一个节点可以有多个父亲。第一个网状数据库系统是IDS。

网状模型的优点缺点

  • 优点:能够更直接地描述现实世界、具有良好的性能、存取效率高
  • 缺点:结构复杂,尤其是数据结构不断扩大以后;DDL、DML语言复杂;

3.关系模型和关系数据库

1970年,IBM公司的埃德加·科德(Edgar F. Codd)首次提出了关系模型的概念 。之后又陆续提出了关系代数、关系演算、关系的第一第二第三范式等理论。1981年,ACM授予其图灵奖,以表彰他在关系数据库研究方面的杰出贡献。 

 网状模型以“表结构”来表示数据记录之间的联系,是关系数据库的基本模型

关系模型和我们常用的表格类似,但专业术语有所不同:
关系:一个关系对应通常说的一张表

元组:表中一行即为一个元组

属性:表中一列即为一个属性

:又称键。是表中某一列属性或某一组属性,可以用来唯一标识一个元组

:属性值取值的集合称为域

分量:元组中的一个属性值

关系模式:是对关系的描述(可以理解为这个表是由什么组成的),比如:学生学号、姓名、性别、专业)

 关系模型的数据操纵与完整性约束:

关系的完整性约束条件

  • 实体完整性
  • 参照完整性
  • 用户定义的完整性 

关系模型的优点缺点

优点:

  • 建立在严格的数学概念基础上
  • 概念单一(实体之间的联系都用关系来表示)
  • 关系模型的存取路径对用户是隐蔽的(安全保密,简化程序员工作)

缺点:

  • 存取路径对用户隐蔽,查询效率不如层次模型和网状模型
  • 为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度

常见的关系型数据库:

Oracle Microsoft SQL ServerIBM DB2MySQLGaussDBSQLite

 4.NoSQL

NoSQL = Not only SQL,是在关系型数据库上的扩展形式

在下一章的博客数据库管理系统——数据模型之关系模型-CSDN博客中, 我们将对数据模型中的关系模型作进一步的讲述。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐