软考 | 2025年5月数据库工程师考试日记
录音-1
录音-1:怎么证明自己的生活或者能力呢?考试,是不是最直接?即便是闺蜜,也会有所顾虑。
这段音频还有个结论,人是不确定性比较大的,可能今天你搞懂的妹子,明天就改掉一些习惯了,这个时候怎么了解对方呢?是不是只有沟通,才能了解自己喜
欢的妹子?然而,书本上的知识,今天你记住了、学懂了,明天这些定理和知识也不会变。所以,结论就是,学习最靠谱。
进程之间的高级、低级通信。低级通信,即 PV 操作,对临界资源进行锁定,使得另一个进程知道这个资源被占用。高级通信原语,进程1 和进程2 在内存上的
两块物理区域,通过另一个物理区域进行通信,因此属于高级语言。
题外话
1.千万要对自己女朋友好一些。她不满意的时候,还能去自己单位告发你。
2.把陌生人当初出气筒,这个是伪命题。人们发脾气了,就说明他们有不满,有不满,就有产品和服务的机会。
3.不做空自己的祖国。即便是功利的原因(例如,其他国家的富豪),也得热爱祖国,对不对?
软考知识点
共享数据上的操作集合,管程。 —— 默读三遍
计算机当中 CPU,一部分是 ALC、ACC,若干寄存器,属于运算单元;一部分是 PC、IR、指令译码器、地址寄存器,这属于控制单元。 —— 这是需要记忆的。
总线:数据总线、地址总线、控制总线。进一步地,地址总线体现在幂次上。
DMA 和中断,两种都是 IO 设备和 CPU 方式。中断的概念,就是断掉现在在干的事情,处理 IO。DMA 有独立的处理器,DMA 只有一件事情要申请,就是申请总
线使用权。
Cache - Main Memory,直接映射(简单粗暴地将主存摘下复制到 Cache);组相联是映射到 Cache 是特定区域;全相联是映射到 Cache 任何区域。
串联、并联。串联是 R1*R2…… *Rk;并联,1-(1-R)^k。
代码如何编译。词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。注意,解释程序不生成目标程序,解释程序和编译程序的区别。
算法
1.简单排序 从左向右比较,逆序则换
2.冒泡排序 逐行扫描,每次扫一遍,直至全面 in order
3.简单选择排序 从左向右 i,再有个 j=1:i 搜索,逆序则换
4.快速排序 两个函数:partition(数组,low, high);quickSort(数组,low, high) 。其中,
partition() {
    while {
        while (i < j) j--; d-i=d-j; while(i < j) i++; d-j=d-i;
    }
    d-i=pivot; return i;
}
quickSort() {
    loc = quickSort(data, low, high);
    quickSort(data, low, loc-1);
    quickSort(data, loc+1, high);
}
5.堆排序 记住一张动图
6.归并排序 不难
查找
顺序查找、折半查找、索引顺序查找、树表查找(例如,二叉树查找,B树)、哈希查找。
哈希查找:(1)开放定址法;经常出题。 (2)链地址发。
最短路进
Prim,Kruscal
拓补排序。找没有出度的点。
单点源最短路径,Dijkstra 算法,注意任何一个点都可以成为起点。
OS
分时系统(最近我在看的《硅谷搅局者》就说到分时系统在硅谷的风云历程)、实时系统(火炮、飞机的系统等)、网络操作系统、分布式操作系统、嵌入式操
作系统。
进程
同步和互斥。一是信号量,PV操作,低级通信语言。二是高级通信
按照被 CPU 调用紧急性,高中低三个级别。
调度算法:先来先服、时间片、优先级调度、多级反馈。
死锁,四个必要条件。互斥条件、请求保持条件、不可剥夺条件、环路条件。破坏任何一个条件都可以接触死锁。
解锁之外,还有死锁预防,死锁避免。
线程
主存
地址重定位。
分区存储:固定分区、可变分区、可重定位分区。
分区保护:上下界寄存器。
分页存储。纯分页存储、快表、两级页表机制。
分段、段页式。
虚拟存储管理。时间局部性、空间局部性。实现,主存和辅存之间。
请求分页管理、页面置换(Optimal、FIFO、LRU、NUR)
工作集、抖动、BeLady 异常。
设备
IO 软件工作流程:用户进程,设备无关软件、设备驱动程序、中断处理程序、硬件。
如何管理设备呢?
通道,让 CPU 免于 IO 交互。 DMA 技术,缓冲技术。假脱机,用类物理设备模拟其他物理设备。
DISK,FCFS、SCAN、SSTF、CSCAN。
旋转调度,两个例题。
文件管理
1.空闲区表;2.位示图;3.空闲块区;4.成组链接法。
文件共享,硬链接、软连接。
作业
作业状态(3状态、5状态),状态转换。作业调度算法,算法性能指标。
第四章 录音。
2025.5.27 笔记
1.计算机网络概念
1975 ARPANET
网络功能:数据通信、资源共享、负载均衡、高可靠性
【通信子网】:低三层,物理层、数据链路层、网络层;【资源子网】:高三层,会话层、表示层、应用层
网络结构:总线型、星型、环型、树型、分布式
【物理层】互联设备:中继器、集线器;【数据链路层】:网桥、交换机;【网络层】:路由器;【应用层】:网关,进行分组转发。
网络传输介质:双绞线、同轴电缆、光纤、微波、红外线和激光、卫星
局域网协议,不同局域网协议最重要的区别是介质访问控制方法,它对网络特性具有十分重要的影响。
数据链路层分成逻辑链路控制(LLC),介质访问控制(MAC)。
以太网,同轴线缆 10兆每秒;双绞线 100兆每秒; 光纤 1000兆每秒。
局域网:令牌环网(差分曼切斯特),fddi
广域网:点对点协议(PPP),数字用户线(xDSL)
tcp/ip:英特网核心协议
arp:Address Resolution Protocol 地址解析协议,用于转换内外网 IP
icmp:差错报文
TCP:提供可靠的、面向连接的、全双工的传输设备。三次握手。TCP 端口 80。
UDP:提供不可靠、无连接协议。
域名和IP地址:域名 baidu.com; IP地址 点分十进制 FF.FF.FF.FF 注意,掩码从左边开始数(因为计算机组成原理的芯片块的计算,是从右边数 offset。区
别是计组给出的是单元的条件。掩码是一种表示)。
NAT技术。动态地址翻译。
DNS服务器,C/S 模式。域名系统是分布式的。DNS 服务器用 UDP 端口,端口号 53。
电子邮件的协议,SMTP(25),POP(110)。
信息安全。
信息存储的安全怎么保证? 两种方式,隔离控制法、限制权限法。
隔离控制法:物理隔离方式、时间隔离方式、逻辑隔离方式、密码技术隔离方式
限制权限法:对用户进行分类管理,安全密级授权不同的用户分在不同类别。
防病毒:升级安全软件、每天备份数据、定期对整个盘进行病毒检测、提高系统安全性、不使用计算机时候不介入因特网、重要网络隔离、不打开陌生邮件、正确配置病毒防治产品。
计算机信息系统安全保护等级:第一级 用户自主保护;第二级 系统审计保护级;第三级 安全标记级;第四级 结构化保护;第五级 访问验证保护级。
网络安全:网络安全威胁、防火墙技术、认证、数字签名、报文摘要、数字证书、入侵检测与防御。
第六章 数据库
历史:人工- 文件 - 数据库系统
数据库系统。DBMS,DDL(外模式、模式、内模式;完整性);DML(检索、插入、修改、删除)。
DBMS 分三类:关系数据库系统、面向对象的数据库系统、对象关系数据库系统。
模式:集中式、C/S
数据库服务器:事务服务器、数据服务器
三级模式:视图层-逻辑层-物理层; 外模式-模式-内模式
两级映像:模式/内模式;外模式/模式
物理独立性,内模式改变,逻辑结构不变;逻辑独立性,逻辑改,用户程序不变。
数据模型:(1)概念数据模型;(2)基本数据模型。层次模型、网状模型都不是关系型数据库。
数据模型三要素:数据结构、数据操作、数据约束条件。
ER模型
数据仓库
联机事务处理 OLTP,面向主题的、集成数据、相对稳定数据、数据反映历史变化。
数据挖掘
关系型数据库
名词:属性、域、目或者度、候选码、主码、主属性、外码、全码。
数据库完整性:实体完整性、参照完整性、用户定义完整性。
查询优化
优化准则:1.提早执行选取运算;2.合并乘积,其选择运算为连接运算;3.将投影运算与其后其他运算一起运行;4.将投影与其后二目运算连接起来;5.执行连接前对关系适当地预处理;6.存储公共子表达式。
定义 7.7 开始
第一范式,所有属性不可再分。表中不含表,bilibili 咖啡色书的讲解;
第二范式,非主属性没有部分依赖;
第三范式,非主属性没有传递依赖;
第四范式,不存在非平凡多值依赖。非平凡多值依赖,左边基数小于右边基数;
BCNF,主属性没有部分依赖、传递依赖。
Armstrong 公里系统
规则
1.自反律,Y是X子集,X->Y
2.增广律,X->Y,XZ->YZ
3.传递律,X->Y, Y->Z, X->Z
推理规则
1.合并规则。X->Y, X->Z, X->YZ。
2.伪传递率。X->Y, QY->Z, 则 XQ->Z
3.分解规则。X->Y, Z是Y子集,X->Z。
候选码求解方法
分成 L, R, NLR, LR
无损连接 v.s. 保持函数依赖
无损连接、无损分解。元组和属性都不减少。判断方法,U1-U2 ?= U1相交U2。用矩阵的方式,查看某一行是否为同一元素。
保持函数依赖。F这个集合里的函数映射关系均存在。判断方法,就是子集涵盖的函数依赖,再作并集,是否是原来的集合。
SQL 语言
注意,DML 就是增删改查。
primary key
foreign key(Sno) references S(Sno)
触发器
三个特点:
1.按照事件触发,事件可以是增删改查;
2.不是立即执行,如果事件触发条件不满足,则什么都不做;
3.由 DBMS 执行,可以撤销事件。
触发数据库有两种方式:for each row; for each statement;
然后注意句式:
create trigger after update A referencing new row as nrow
for each row
BEGIN
    DML
END
嵌入式 SQL,平时用得比较少,create type 这类在 mysql 是不起作用的,针对 SQL-99。