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

一、数据模型:

1.1、概念模型:

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

基本元素:

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

新概念模型要求:

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

1.2、逻辑模型:

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

1.3、物理模型:

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

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

二、数据建模过程

  1. 数据需求分析:简单地说,数据需求分析就是分析用户对数据的需要和要求。
  2. 概念模型设计:将需求分析得到的结果抽象为概念模型的过程就是概念模型设计,其任务是确定实体和数据及其关联。
  3. 逻辑模型设计:逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式
  4. 物理模型设计:物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等
相关推荐
学代码的真由酱5 分钟前
MySQL数据库进阶-数据库设计实践-Java
数据库·mysql·数据库设计
遇事不決洛必達26 分钟前
【数据库系列】本地映射云服务器Mysql的方法
服务器·数据库·mysql·定时任务
海鸥-w37 分钟前
用python (fastapi)做项目第一天创建项目结构,数据建表,ORM配置安装,写第一个接口
数据库·python·fastapi
zfoo-framework1 小时前
通过redis-cli+lua脚本查询redis数据
数据库·redis·lua
牛栓柱1 小时前
【后端实战】用 Supabase + React/TS 零成本构建高并发 Multi-Agent 服务
前端·数据库·人工智能·后端·react.js·前端框架
yyuuuzz2 小时前
谷歌云基础服务的入门认知
linux·运维·服务器·数据库·人工智能·github
超梦dasgg2 小时前
工作中 MySQL 读写分离主从延迟:成因、影响、落地方案、生产实战处理
数据库·mysql
Wonderful U2 小时前
Python+Django实战:打造智能生鲜果蔬进销存管理系统(采购入库、库存预警、销售开单、毛利统计)
数据库·python·django
Demon1_Coder2 小时前
Day4-微服务-Seata默认事务
java·数据库·微服务
我是大猴子2 小时前
Redis为什么不适合做持久化和DB的区别在哪里
数据库·redis·缓存