【软考】系统架构设计师-数据库设计基础

数据库核心考点

三级模式-两级映射

外模式--视图

概念模式--表(模式、基本表)

内模式--物理文件

数据库设计

概念结构设计:属性冲突、命名冲突、结构冲突

逻辑结构设计:关系模式(层次模型、网络模型)

物理设计:

范式:

1NF:每个属性不可再分(简单属性);

2NF:消除了非主属性对主属性的部分函数依赖

3NF:消除了非主属性之间的传递函数依赖

BCNF:消除了主属性之间的部分函数依赖和传递依赖

4NF:消除了多值依赖

候选键:唯一标识元组;推导出其他属性(没在右边出现过);

主键:任选一个候选键作为主键;

主属性:所有候选键的属性取并集;

推论1:单属性候选键天然是2NF;

推论2:所有属性都是主属性,天然就是3NF;

关系代数

自然连接:显示全部列,相同属性只显示一次;属性相同且值相同的记录。

笛卡尔积:S1和S2的所有列,行是 S1 x S2

投影:选择列,π1,2 (S1), π sno, name (S2)

选择:选择记录 σ 1=N01(S1), σ 2=candy(S2)

select ...(π)...from...(R,S)...where..(σ)...

元组就是行,属性就是列。

事务:ACID四种特性:原子性、一致性、隔离性、持久性

Group by ... having .. 连用; group by 后面跟的属性必须在Select中出现

数据库设计过程:

  • 需求分析
  • 概念结构设计(ER图)
  • 逻辑结构设计
  • 物理设计
  • 数据库实施
  • DB运行和维护阶段

数据库锁

分布式锁:不同系统中

线程锁:方法/代码块枷锁

进程锁:同一OS

分布式死锁:两个进程相互等待资源释放(对方的锁),同时又没有设置超时!

Redis基础

Redis5大数据类型:string、list、set、hash、zset

Redis常用命令:如,zset

Redis发布订阅模式

关系代数和Armstrong公理

基本规则:

自反律:Y ∈ X ∈ U, 则 X -> Y

增广律:X -> Y, Z ∈ U, 则 XZ -> YZ

传递律:X -> Y, Y->Z, 则 X -> Z

推论规则:

合并规则:X -> Y, Y->Z, 则 X -> YZ

分解规则:X -> Y, Z ∈ Y, 则 X -> Z

伪传递依赖:X -> Y, WY -> Z, 则 WX -> Z

保持无损连接(2分解时)需要满足一下两个条件:

R1 ∩ R2 -> R1 - R2 或 R1 ∩ R2 -> R2 - R1

分片透明:不知道逻辑上访问的表是如何分块存储的;

复制透明:复制技术的分布方法,不知道数据复制到哪个节点;

位置透明:不知道数据的物理位置;

逻辑透明:不知道局部场地使用的是哪种数据模型

数据挖掘的任务:

关联分析、聚类分析、分类分析、异常分析、特异群组分析、演变分析

相关推荐
2301_7662834412 分钟前
Golang怎么实现防重复提交_Golang如何用Token机制防止表单重复提交【技巧】
jvm·数据库·python
qq_4142565712 分钟前
CSS如何实现元素在容器内居中_利用margin-auto技巧
jvm·数据库·python
2401_8242226913 分钟前
如何用 Transferable 对象零拷贝转移超大数组内存给子线程
jvm·数据库·python
SilentSamsara14 分钟前
Python 并发基础:threading/GIL 与 multiprocessing 的选型逻辑
服务器·开发语言·数据库·vscode·python·pycharm
m0_4954964114 分钟前
如何禁用 Vite 中的热更新(HMR)以避免 React 应用加载中断
jvm·数据库·python
m0_7411733315 分钟前
MySQL中如何使用CAST实现类型转换_MySQL数据类型转换技巧
jvm·数据库·python
qq_4135020215 分钟前
如何用 bubbles 属性让自定义事件穿透多个 Web Components
jvm·数据库·python
地球资源数据云16 分钟前
2015年中国30米分辨率沼泽湿地空间分布数据集
大数据·数据结构·数据库·人工智能·机器学习
2301_7756398917 分钟前
如何修改Oracle服务器默认的日期格式_NLS_DATE_FORMAT全局配置
jvm·数据库·python
2401_8314194418 分钟前
React 中父子组件函数传递的正确调用方式
jvm·数据库·python