🧱 一、什么是 RDS?——“管家式数据库”
✅ 通俗解释:
想象你要开一家网店,需要数据库来存储订单、客户信息等。你可以自己买电脑装 MySQL,也可以交给 AWS 帮你打理——这就是 RDS。
RDS 是 Amazon 提供的一个“全托管”的关系型数据库服务。它帮你做很多麻烦事(备份、恢复、监控、故障切换),就像请了个数据库管家。
🧩 二、什么是“关系型数据库”?行、列、表是啥?
✅ 通俗理解:
- 一张表就是一个 Excel 表格;
- 一行(row)就是一条记录(record / tuple);
- 一列(column)是属性(attribute);
- 表(table)是整个数据集合。
💡 对应题目回顾:
- Row = Record or Tuple ✅
- 表必须有 Primary Key ✅(主键=身份证号,唯一定位每一行)
- Attribute 是列,不是行 ❌
🔑 三、SQL 基础语句(必须死记)
你想干啥 | SQL 语句 | 类比 |
---|
读数据 | SELECT | 看 Excel 表 |
插入数据 | INSERT | 添加一行 |
改数据 | UPDATE | 改某一格内容 |
删数据 | DELETE | 删一行 |
💡 对应题目:
- 用
SELECT
从表中读取数据 ✅ QUERY/SCAN
是 NoSQL 的写法 ❌
⚙️ 四、RDS 支持哪些数据库引擎?
引擎名 | 类似产品 | 常见用途 | 是否兼容 MySQL |
---|
MySQL | 开源数据库 | Web 应用通用 | ✅ |
MariaDB | MySQL 的分支 | 类似 MySQL | ✅ |
PostgreSQL | 功能更强的大佬 | 科研、复杂数据操作 | ❌ |
Oracle | 商业数据库 | 金融、电信、传统行业 | ❌ |
Microsoft SQL Server | Windows生态 | 企业内网系统 | ❌ |
Aurora | AWS 自研 | 性能好,成本低 | ✅ (有 MySQL/PG 两种模式) |
💡 对应题目:
- MariaDB 和 Aurora 是兼容 MySQL 的 ✅
- Oracle 和 PostgreSQL 不是 ✅
- 一个 RDS 实例只能跑 一个数据库引擎 ✅
💾 五、RDS 存储与性能(IOPS、SSD)
✅ 通俗理解:
IOPS 就像数据库每秒能做多少次“读/写操作”。比如你每秒要写 200MB 数据,要用 性能强的硬盘 和 足够的 IOPS 配额。
📘 存储类型(从便宜到贵):
类型 | 特点 | 用例 |
---|
General Purpose SSD (gp2) | 自动分配 IOPS,便宜,适合一般应用 | ✅ 初创项目 |
Provisioned IOPS SSD (io1) | 固定高 IOPS,需要手动设定 | ✅ 高吞吐场景 |
Magnetic | 便宜但慢,已过时 | ❌ 不推荐 |
💡 计算 IOPS 小贴士:
💡 对应题目:
- MariaDB 每秒写 200MB ⇒ 需要 12,800 IOPS ✅
- Provisioned IOPS 要求 100 GB 最少要配置 240 GB 才能跑到 12,000 IOPS ✅
🧠 六、实例类型(Instance Class)
类比:
- Burstable(突发型)=手机省电模式
- Standard = 中等性能办公电脑
- Memory-Optimized = 多开应用不卡顿
- Storage-Optimized = 超强硬盘速度(IO)
💡 对应题目:
- 提供专属带宽给硬盘 ⇒ Storage Optimized ✅
🔁 七、可用性与备份机制(多 AZ、快照、Read Replica)
✅ 通俗理解:
- Multi-AZ 部署:AWS 自动为你在另一个可用区部署“备份实例”,两边数据 同步复制,主挂了自动切换。
- Read Replica(只读副本):副本专门接收查询,减轻主库压力,数据异步复制。
- Snapshot(快照):相当于数据库的备份照片,恢复时会用这个快照启动一个新的实例。
💡 对应题目:
- Read replica 只能查询 ✅
- Multi-AZ 是同步复制 ✅
- Snapshot 恢复会启动新的实例 ✅
🧊 八、Redshift 是啥?和 RDS 有啥区别?
- RDS 是“操作型数据库” OLTP:高频小数据操作(如订单、支付)
- Redshift 是“分析型数据库” OLAP:分析历史大数据(报表、BI)
Redshift 的分布方式:
- ALL:所有节点都保存一份表副本 ✅(适合小表)
- EVEN:平均分配(大表默认方式)
- KEY:按照某列值 hash 分配
- ODD:是干扰项 ❌
Redshift 节点类型:
- Dense Storage:容量大(最多 326TB) ✅
- Dense Compute:速度快
- Leader Node:不存数据,仅协调工作 ❌
🗃️ 九、非关系型数据库(以 DynamoDB 为代表)
- 不是表结构,而是“键-值”或“文档”形式
- 没有 Join,没有 Schema(灵活)
- 但也要主键!否则你怎么找数据?
复合主键:
- Partition key(哈希分片):确定分布在哪台机器
- Sort key(排序键):用于排序 + 范围查询(例如 orderDate)✅
💡 对应题目:
- 非关系型数据库也必须有主键 ✅
- 主键唯一,数据类型必须一致 ✅
- 日期字段放在 sort key 更合适 ✅
🧠 总结一句话记忆法:
概念 | 口诀 |
---|
RDS 是啥 | AWS 的“关系型数据库管家” |
表结构 | 表里是行,行是记录(row = record / tuple) |
主键 | 必须唯一,像身份证 |
SELECT | 读数据库的标准动作 |
Read Replica | 只能查不能改 |
Multi-AZ | 同步备份,主挂了自动切换 |
快照恢复 | 会创建新实例 |
Redshift ALL | 表太小,就复制到每台节点 |
Redshift Dense Storage | 储存最大可达 326 TB |
DynamoDB 主键 | Partition 决定去哪,Sort 决定排序 |