数据库+数据缓存篇
2025-03-03 17:42:05 0 举报
AI智能生成
【备考建议】 1. 一周刷一下视频。B站上刷一两遍软考视频,整体过一下,泛读,不需要每个知识点都很懂,有个概念印象。比如希赛、文老师等 2. 一周建立知识体系。结合思维导图,过一遍教材,重点关注思维导图中的章节核心知识点。做到知道章节有哪些知识点,某知识点在哪个章节。稍微记一下思维导图框架,建立核心知识体系 3. 两-三周题库刷题。可以用软考达人、软考通等刷题软件按章节刷题,巩固知识点细节。对于错题和不清楚的知识点翻下思维导图(甚至教材)加深印象 4. 一周刷历年真题。熟悉历年真题的出题思路,培养答题感觉,同时查缺补漏,加强对不熟悉和易错题的记忆。同时,做一些每日一练这种保持综合题手感,避免知识点遗忘。 5. 一至两周练习论文。一定要练,且有技巧的练。 6. 考前一周,整体回顾思维导图,并背诵记忆。做到能够默诵回顾导图中的所有知识点 7. 轻装上阵,从容考试!
作者其他创作
大纲/内容
数据库
数据库概念
数据模型
数据库管理系统
三级模式两级映像
三级模式
外模式
概念模式
内模式
两级映像
外模式与概念模式映像
逻辑独立
概念模式与内模式映像
物理独立
关系数据库
关系术语
理论
函数依赖公理系统
关系运算
并
差
笛卡尔积
投影
选择
连接
外连接
左外连接
右外连接
全外连接
设计范式
第一范式
第二范式
第三范式
巴克斯范式
第四范式
数据库设计
设计步骤
需求分析
概念结构设计
选择局部应用
逐一设计分E-R图
E-R图合并
逻辑结构设计
E-R图转换为关系模型
实体到关系对象
联系转换
关系模型规范化
确定完整性约束
参照完整性约束
实体完整性约束
用户自定义完整性约束
确定用户视图
反规范化
方式
增加冗余列
增加派生列
表重组
表分割
水平分割
垂直分隔
带来的问题
数据不一致性
如何保证一致性
应用程序同步
触发器同步
异步批量同步
物理结构设计
确定数据分布
确定数据存储结构
确定数据的访问方式
数据库实施
建立实际数据库
数据加载
数据库运行和评价
数据库运行维护
数据库性能的监测和改善
数据库的备份及故障恢复
数据库重组和重构
数据库与应用交互
库函数接口访问
嵌入式SQL访问
通用数据接口访问
ORM访问
NoSQL
分类
列式存储数据库
键值对数据库
文档型数据库
图数据库
体系框架
接口层
数据逻辑层
数据分布层
数据持久层
事务特点 ACID
原子性
一致性
隔离性
持久性
备份与恢复
静态备份
动态备份
海量备份
增量备份
数据库优化技术
反规范化技术
主要方法
增加冗余列
增加派生列
重新组表
水平分割表
垂直分割表
优点
避免表之间的连接操作,提高性能
缺点
冗余存储,浪费空间,数据不一致性
解决办法
应用程序同步
设置触发器同步
异步批处理同步
分布式数据库优化技术
主从复制
同步模式
全同步
半同步
异步
binlog日志3种模式
基于SQL语句的复制
基于行的复制
混合复制
读写分离
分表
水平分表
垂直分表
实体完整性约束
分库
数据缓存
数据类型
String 类型
LIST 类型
Set 类型
Hash 类型
ZSet 类型
持久化
RDB 内存快照
磁盘刷新频率低
文件大小占用小
数据恢复快,效率高
数据安全低
数据一致性弱
AOF 日志
磁盘刷新频率高
数据文件占用大
数据恢复速度慢,效率低
数据安全高
数据一致性强
缓存过期策略
定期删除
惰性删除
其他淘汰机制
volatile-lru 最近最少使用
volatile-lfu 最不经常使用
volatile-random 随机淘汰算法
volatile-ttl 生存时间淘汰
allkeys-lru
allkeys-lfu
allkeys-random
缓存访问
缓存更新方法
同步更新
异步更新
缓存数据库一致性
读缓存,读数据库更新缓存
写数据库,更新缓存
写数据库写缓存:会有双写问题
常见问题
缓存穿透
原因及办法
恶意攻击
限制访问
应用合法性检查
使用布隆过滤器
优点
缺点
缓存是空的
缓存预热
在最前端进行流量控制
设置null值
缓存雪崩
原因及办法
1. redis故障
主从或者集群提高可用性
服务降级、熔断、限流等
2. 大量key同时过期
过期时间加随机值
缓存击穿
原因及办法
热点key过期时间太短
设置较长过期时间
使用分布式锁
缓存集群
集群方案
主从复制
哨兵集群
Cluster集群
缓存分片方法
哈希算法
一致性哈希算法
优点
集群切片的方式
客户端分片
代理/中间件 分片
服务端分片
Memcache与Redis能力比较
0 条评论
下一页