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

一、数据模型:

1.1、概念模型:

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

基本元素:

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

新概念模型要求:

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

1.2、逻辑模型:

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

1.3、物理模型:

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

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

二、数据建模过程

  1. 数据需求分析:简单地说,数据需求分析就是分析用户对数据的需要和要求。
  2. 概念模型设计:将需求分析得到的结果抽象为概念模型的过程就是概念模型设计,其任务是确定实体和数据及其关联。
  3. 逻辑模型设计:逻辑模型设计的任务就是将概念模型中实体、属性和关联转换为关系模型结构中的关系模式
  4. 物理模型设计:物理模型考虑的主要问题包括命名、确定字段类型和编写必要的存储过程与触发器等
相关推荐
Irene19911 分钟前
数据发散(Data Spreading)详解(附:示例 数据发散最大值是笛卡尔乘积)
数据库
a9511416423 分钟前
c++如何解析二进制协议中的可选字段读取逻辑及其反序列化【详解】
jvm·数据库·python
weixin_5806140014 分钟前
golang如何实现时间格式化_golang时间格式化方法详解
jvm·数据库·python
forEverPlume15 分钟前
c++怎么利用std--span实现在不拷贝数据的前提下解析大规模文件【进阶】
jvm·数据库·python
FinTech老王22 分钟前
逻辑删除不等于物理销毁:KingbaseES敏感数据标记与销毁实操指南
数据库·安全·oracle
HHHHH1010HHHHH26 分钟前
Tailwind CSS如何快速定义固定宽高比_使用aspect-square实现CSS正方形
jvm·数据库·python
梦想的旅途227 分钟前
解构自动化办公新思路:实现外部群聊能力的深度集成与交互
java·数据库·rpa
m0_5150984230 分钟前
c++怎么获取文件的Inode节点信息_stat结构体深度解析【详解】
jvm·数据库·python
m0_6742946437 分钟前
HTML怎么限制输入字符数_HTML input maxlength属性用法【详解】
jvm·数据库·python
maqr_11042 分钟前
layui table单元格编辑 layui表格如何实现可编辑
jvm·数据库·python