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

一、数据模型:

1.1、概念模型:

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

基本元素:

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

新概念模型要求:

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

1.2、逻辑模型:

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

1.3、物理模型:

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

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

二、数据建模过程

  1. 数据需求分析:简单地说,数据需求分析就是分析用户对数据的需要和要求。
  2. 概念模型设计:将需求分析得到的结果抽象为概念模型的过程就是概念模型设计,其任务是确定实体和数据及其关联。
  3. 逻辑模型设计:逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式
  4. 物理模型设计:物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等
相关推荐
敲上瘾15 小时前
Redis持久化存储机制:从RDB到AOF再到混合持久化的配置与实践
linux·数据库·redis·缓存
2401_8949155319 小时前
GEO 优化源码全解析:从搜索引擎到 AI 引擎的底层改写逻辑
java·服务器·前端·数据库·人工智能·分布式·搜索引擎
正儿八经的少年1 天前
布隆过滤器(解决redis缓存穿透步骤之一)
数据库·redis·缓存
xrandzj1 天前
MySQL8.0 从零通关核心操作手册(Ubuntu实战版)
数据库·mysql
我不会插花弄玉1 天前
4.数据类型【由浅入深-MySQL】
数据库·mysql
denggun123451 天前
yield
前端·数据库·python
ltl1 天前
SQLite Rollback Journal:写前拷贝与提交点
数据库
ltl1 天前
TiFlash Learner:Raft 日志如何进列存
数据库
ltl1 天前
BM25 与 Lucene Similarity:公式如何落到 postings
数据库
ltl1 天前
RocksDB Block Cache 与 Bloom Filter:读放大怎么裁
数据库