← 返回导航
数据库
范式/反规范化、CAP/BASE、NoSQL
你的实战强区,主要是对齐术语 + 规范化理论 + 新概念
规范化(案例/综合高频)
| 范式 | 要求 | 消除 |
|---|
| 1NF | 属性原子 | 不可再分 |
| 2NF | 消除部分函数依赖 | 非主属性不依赖候选键的一部分 |
| 3NF | 消除传递函数依赖 | 非主属性不依赖非主属性 |
| BCNF | 每个决定因素都是候选键 | 主属性对键的部分/传递依赖 |
- 部分依赖 -> "成绩表里存了学生姓名(依赖学号一个键)"= 违反2NF
- 传递依赖 -> "学号->系号->系主任" = 违反3NF
反规范化(案例高频)
加冗余提读性能:增派生列、冗余列、重组表、分割表(水平分表/垂直分表) 代价:空间换时间、数据一致性维护成本、DML 复杂化
分布式数据库(高频)
- CAP:一致性C、可用性A、分区容忍P 三选二;分布式必须保P,实际是 CP vs AP 取舍
- BASE:基本可用、软状态、最终一致(AP方案的延伸)
- 两阶段提交2PC:准备+提交,强一致但有阻塞、协调者单点
- 三阶段提交3PC:加CanCommit预询问,减少阻塞
- 数据分片:水平(按行)/垂直(按列);一致性哈希解决扩缩容
NoSQL 四大类
| 类型 | 代表 | 场景 |
|---|
| KV | Redis | 缓存、会话 |
| 列族 | HBase、Cassandra | 海量写、时序 |
| 文档 | MongoDB | 灵活结构、内容管理 |
| 图 | Neo4j | 关系网络、推荐 |
内存数据库 vs 磁盘库
内存库(Redis/SAP HANA):读写极快、易失(持久化靠快照+日志)、适合热点/实时 案例考点:主存+磁盘混合架构,热数据内存、冷数据落盘
新趋势术语
- NewSQL:保SQL+分布式扩展(TiDB、OceanBase)
- 读写分离、分库分表中间件(MyCat/ShardingSphere)
- HTAP:交易+分析混合负载