跳到主要内容

C2-05-04-选型决策与高频错误

本篇是《C2-05-数据库与缓存体系》的第4个分篇,主要包含:选型决策与高频错误。

12-★★★★★-选型决策与高频错误​

12.1-最重要的数据库选择树​

需要 Database
│
├── 传统关系数据 / SQL / Transaction?
│ │
│ ├── 普通 Managed Relational Engines
│ │ └── RDS
│ │
│ └── MySQL/PostgreSQL-compatible AWS Engine
│ └── Aurora
│
├── Key-Value / Document NoSQL、大规模 Serverless?
│ │
│ └── DynamoDB
│
├── MongoDB-compatible Document Database?
│ │
│ └── DocumentDB
│
├── Highly Connected Graph?
│ │
│ └── Neptune
│
├── In-Memory Cache?
│ │
│ └── ElastiCache
│
└── Data Warehouse / BI / Analytics?
│
└── Redshift

12.2-高频关键词映射​

relational
SQL
managed relational database
→ RDS

MySQL-compatible / PostgreSQL-compatible AWS relational engine
→ Aurora

NoSQL
key-value
serverless database
massive scale
→ DynamoDB

in-memory cache
reduce database load
low latency cache
→ ElastiCache

MongoDB-compatible
document database
→ DocumentDB

graph
highly connected data
recommendation relationship
fraud graph
→ Neptune

data warehouse
petabyte-scale analytics
BI
→ Redshift

12.3-常见错误-1:NoSQL-=-没有-Schema​

不准确。

NoSQL 不代表:数据随便乱写、没有设计。

DynamoDB 仍然需要非常认真设计:Partition Key、Sort Key、Access Pattern、Index。

DocumentDB 也有:Document Structure、Index、Query Pattern。

区别是:数据模型、不是传统关系表设计的简单复制。


12.4-常见错误-2:DynamoDB-=-Managed-MongoDB​

错误。

DynamoDB
→ AWS serverless distributed NoSQL
Key-Value / Document

DocumentDB
→ MongoDB-compatible Document Database

看到:MongoDB。

优先想到:DocumentDB。


12.5-常见错误-3:Aurora-=-NoSQL​

错误。

Aurora 是:Relational、MySQL-compatible、PostgreSQL-compatible。


12.6-常见错误-4:ElastiCache-=-永久数据库替代品​

不应该这样理解。

ElastiCache 的核心定位:In-Memory Cache / Data Store。

典型用于:降低数据库压力、减少 Latency、保存 Session / Hot Data。

很多业务仍需要:Durable Source of Truth。


12.7-常见错误-5:Multi-AZ-=-Read-Scaling​

经典 Multi-AZ DB Instance:主要解决 HA。

Read Replica:主要解决 Read Scaling。

这是考试中非常容易反着选的点。


12.8-常见错误-6:Read-Replica-=-Backup​

错误。

Read Replica
→ 当前数据副本 / Read Scaling

Backup / Snapshot
→ 历史恢复点

12.9-常见错误-7:Redshift-=-更大的-RDS​

Redshift 是:Data Warehouse / Analytics,而不是单纯:“RDS 容量不够了,换一个超大 RDS。”。

工作负载不同:OLTP vs OLAP。


12.10-常见错误-8:RDS-管理一切,所以客户不用管安全​

不对。

Managed Database 仍有:Shared Responsibility。

客户仍管理:Data、Identity、Access、Schema、Application、Configuration。


本篇概述​

  • 本篇梳理了选型决策与高频错误相关的核心知识、适用场景与判断要点。

返回本章总述|查看本章概述