数据库实体与关系模型

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 【5月更文挑战第16天】本文介绍了数据库模型和UML关系,UML包括依赖、关联(聚合、组合)、泛化和实现4类关系。UML有13种图,分为结构图、行为图和交互图。数据库的基本数据模型包括外模式(用户视图)、概念模式(全局逻辑结构)和内模式(物理存储)。数据模型三要素是数据结构、操作和约束条件。简单易用的缓存数据模型适用于需求灵活、高性能、大数据量且不要求强一致性的场景。

1 数据库模型的概念

模型 是对现实世界的一种建模,比如实体关系模型:E-R模型,常用的知名工具非UML莫属。

2 UML的关系

UML有4类关系:

  • 依赖

              依赖是两个事物之间的语义关系,
              其中一个事物(独立的)发生变化将影响另一个事物(依赖事物)的语义。
    
  • 关联

    关联是一种结构关系,它描述了一组链,链是对象之间的连接。关键提供了不同类之间的对象可以相互作用的连接。

关联-聚合关系

            聚合关系是关联的一个特例,聚合表示类之间的关系是整体与部分的。 但是又可以分离。
            使用 ---<> 表示聚合关系,空心菱形指向的是“整体”的类。
            比如发动机之于汽车,就是聚合关系。 
            比如大雁之于雁群,就是聚合关系。 

image.png

关联-组合关系

          组合也是关联的一种特例,这种关系比聚合更强,也称之为强聚合;
          他同样体现整体和部分的关系,
          但是此时整体与部分是不可分的,整体的生命周期结束,部分的生命周期也结束。 
          使用 实心菱形表示组合关系。

image.png

实例:

          比如部门之于单位。
          比如翅膀之于鸟儿。
  • 泛化

              是一种特殊、一般关系,即OO语言中,类之间的继承关系。
              特殊元素(子元素)的对象可替代一般元素(父元素)的对象。
              用这种方法,子元素共享了对象之间的属性和方法。
    
              泛化关系画成一条带有空心箭头的实线,它指向父元素。
    

    image.png

  • 实现

              实现是类元之间的语义关系,其中一个类元制定了由另一个类元保证执行的契约。
              两种情况下会使用实现关系:
    
              一类是在接口和实现它们的类或构件之间:
              另一个是在用例和实现它们的协作之间。
    
              使用虚线和空心三角形箭头表示这个关系。
    

image.png

3 运用于数据库整个语言的公用机制

  • 图 (支配基本构造块如何放置的规则)

UML2.0提供了13种图,分别是类图,对象图,用例图,序列图,通信图,状态图,活动图,构件图,部署图,组合结构图,包图,交互概览图,计时图。

 图
        结构图
            静态图
                类图
                对象图
            实现图
                组件图
                部署图
            包图
            组合结构图

        行为图
            活动图
            状态图
            用例图

        交互图
            序列图
            时间图
            交互概率图
            通信图 

4 数据库基本数据模型

数据库关系模式

三级模式 外模式,概念模式,内模式

  • 1、外模式

对应数据库的升级、外模式包括(子模式 用户模式) 用来描述用户看到或者使用那部分的数据的逻辑结构,用户根据外模式用户数据操作语句或者程序去操作数据库中的数据

外模式的主要特点用来描述组成用户视图各个记录的组成、相互联系、数据的完整性和安全性、数据项的特征等。

  • 2、概念模式

对应数据库的概念模式,概念模式(概念、逻辑模式)用以描述整个数据库中的逻辑结构、用来描叙现实生活中的实体,以及它们之间的关系、从而定义记录数据项的完整性约束条件以及记录之间的联系是数据项的框架

概念模式是数据库中全体数据的逻辑结构和特征的描叙是所有用户数据的公共数据视图。

  • 3、内模式

内模式对应物理级数据库,内模式是所有模式中的最低层的表示,不同于物理层,假设外存是一个无限性的地址空间

内模式是存储记录的类型,存储域以及表示以及存储记录的物理顺序,指示元索引,和存储路径的等数据的存储组织从而形成一个完整的系统

  • 4 数据模型三要素

      数据结构
      数据操作
      数据约束条件
    
          实体完整性  
          参照完整性  - 外键完整
          用户自定义完整性
    

image.png

5 小结

相较于关系型数据库越来越复杂的数据模型,缓存数据模型有简单易用的优势,易扩展、大数据量,高性能、灵活的数据模型、高可用。

适用情况:缓存数据模型比较简单、需灵活性更强的IT 系统、对数据库性能要求较高、不需要高度的数据一致性.

目录
相关文章
|
7月前
|
机器学习/深度学习 存储 安全
数据库模型:层次模型、网状模型、关系模型
数据库模型:层次模型、网状模型、关系模型
|
7月前
|
SQL 关系型数据库 MySQL
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
|
4月前
|
Java 数据库连接 数据库
AI 时代风起云涌,Hibernate 实体映射引领数据库高效之路,最佳实践与陷阱全解析!
【8月更文挑战第31天】Hibernate 是一款强大的 Java 持久化框架,可将 Java 对象映射到关系数据库表中。本文通过代码示例详细介绍了 Hibernate 实体映射的最佳实践,包括合理使用关联映射(如 `@OneToMany` 和 `@ManyToOne`)以及正确处理继承关系(如单表继承)。此外,还探讨了常见陷阱,例如循环依赖可能导致的无限递归问题,并提供了使用 `@JsonIgnore` 等注解来避免此类问题的方法。通过遵循这些最佳实践,可以显著提升开发效率和数据库操作性能。
86 0
|
5月前
|
存储 SQL Oracle
|
6月前
|
存储 关系型数据库 MySQL
MySQL周内训参照1、ER实体关系图与数据库模型图绘制
MySQL周内训参照1、ER实体关系图与数据库模型图绘制
87 1
|
6月前
|
存储 监控 数据管理
数据库原理与应用——简答题练习(数据管理技术发展、数据库主要特征、数据模型、关系模型、实体性之间的关系、DBMS的功能、相关术语解释、数据库系统)
数据库原理与应用——简答题练习(数据管理技术发展、数据库主要特征、数据模型、关系模型、实体性之间的关系、DBMS的功能、相关术语解释、数据库系统)
64 0
|
7月前
|
数据库
【数据库】第二章 关系模型介绍
【数据库】第二章 关系模型介绍
55 0
|
7月前
|
机器学习/深度学习 数据可视化 安全
数据库系统概念(第二周 第二堂)(关系模型)
数据库系统概念(第二周 第二堂)(关系模型)
|
7月前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表4、数据库设计——2、数据库规范化(Normalization)——3、实体-关系模型(ER Modeling)
MySQL技能完整学习列表4、数据库设计——2、数据库规范化(Normalization)——3、实体-关系模型(ER Modeling)
138 0
|
数据库
数据库原理—关系模型的数据操作(八)
数据库原理—关系模型的数据操作(八)