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

一、数据模型:

1.1、概念模型:

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

基本元素:

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

新概念模型要求:

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

1.2、逻辑模型:

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

1.3、物理模型:

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

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

二、数据建模过程

  1. 数据需求分析:简单地说,数据需求分析就是分析用户对数据的需要和要求。
  2. 概念模型设计:将需求分析得到的结果抽象为概念模型的过程就是概念模型设计,其任务是确定实体和数据及其关联。
  3. 逻辑模型设计:逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式
  4. 物理模型设计:物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等
相关推荐
dinglu1030DL7 小时前
SQL嵌套查询逻辑重构_将复杂业务逻辑移至应用层
jvm·数据库·python
醇氧7 小时前
CentOS 7 安装 MySQL 8.0 踩坑全记录与终极解决方案
数据库·redis·缓存
2401_884454157 小时前
SQL窗口函数解决数据倾斜问题_如何优化分组查询
jvm·数据库·python
2401_850491657 小时前
Go 中使用 go-json-rest 时调用 Write 方法的正确方式
jvm·数据库·python
2301_815901977 小时前
PHP怎么记录SQL日志_PDOStatement拦截查询语句【详解】
jvm·数据库·python
码农刚子7 小时前
.NET 8 Web开发入门(四):注入燃料——Entity Framework Core 与 Code First 实战
数据库·orm·sql server
承渊政道7 小时前
从ROWNUM到LIMIT:KES、Oracle与PostgreSQL的执行顺序差异解析
数据库·数据仓库·sql·mysql·安全·postgresql·oracle
2501_901006477 小时前
CSS如何实现多种颜色的线性渐变_使用linear-gradient()按方向和色标填色
jvm·数据库·python
2303_821287387 小时前
Golang怎么用embed嵌入SQL文件_Golang如何将SQL迁移文件嵌入Go程序统一管理【技巧】
jvm·数据库·python
m0_702036537 小时前
PHP怎么处理Eloquent Attribute Harmonization属性协调_Laravel解决数据冲突【教程】
jvm·数据库·python