软考高级第四版备考---第四十三天(数据工程--数据建模)

一、数据模型:

1.1、概念模型:

把现实世界中的客观对象抽象为某一种信息结构,这种信息结构不依赖于具体的计算机系统,也不对应某个具体的DBMS,它是概念级别的模型;

基本元素:

  • 实体:客观存在的并可以相互区分的事务称为实例,而同一类型实例的抽象称为实体
  • 属性:实体的特性称之为属性
  • 域:属性的取值范围称为该属性的域
  • 键:能唯一标识每个实例的一个属性或几个属性的组合称为键
  • 关联:在现实世界中,客观事务之间是相互关系的,这种相互关系在数据模型中表现为关联

新概念模型要求:

  • 对现实世界的抽象和概括;
  • 简洁、明晰、独立于机器、方便数据库设计人员与用户交换意见;
  • 易于变动;
  • 关系、层次或网状

1.2、逻辑模型:

  • 数据结构:层次模型、网状模型、关系模型、面相对象模型、对象关系模型
  • 关系模型基本关系:关系、关系的属性、视图
  • 关系的完整性约束:实体完整性、参照完整性、用户定义的完整性

1.3、物理模型:

考虑各种具体的技术实现因素,进行数据库体系结构设计,真正实现数据在数据库的存放

基本元素:表、字段、视图、索引、存储过程、触发器

二、数据建模过程

  1. 数据需求分析:简单地说,数据需求分析就是分析用户对数据的需要和要求。
  2. 概念模型设计:将需求分析得到的结果抽象为概念模型的过程就是概念模型设计,其任务是确定实体和数据及其关联。
  3. 逻辑模型设计:逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式
  4. 物理模型设计:物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等
相关推荐
SelectDB12 小时前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶13 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵16 小时前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils16 小时前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend2 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
ClouGence3 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将3 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils4 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波4 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_5 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库