title, type, tags, sources, last_updated
| title |
type |
tags |
sources |
last_updated |
| Multi-Database Architecture |
concept |
| AWS |
| Database |
| Architecture |
| Microservices |
|
| ctp-topic-51-architecting-with-aws-purpose-built-databases |
|
2026-04-23 |
Definition
多数据库混合架构(Multi-Database Architecture)是指在单一应用中根据各部分的数据特征选用不同类型专用数据库的架构模式,以实现最优的数据层性能。
Core Principle
每个数据模型应使用最适合它的数据库类型:
- 关系型数据 → 关系型数据库(Aurora / RDS)
- 高频读取 → 内存缓存(ElastiCache)
- 无结构键值 → 键值数据库( DynamoDB)
- 高度互连 → 图数据库(Neptune)
Real-World Case Studies
| 数据类型 |
数据库 |
选型原因 |
| 个性化学习进度 |
DynamoDB |
高写入、低延迟、弹性扩展 |
| 高频词/短语 |
ElastiCache |
微秒级读取缓存 |
| 事务数据(购买、订阅) |
Aurora |
ACID 强一致性、复杂查询 |
| 数据类型 |
数据库 |
选型原因 |
| JSON 文档(用户数据、偏好) |
DynamoDB |
高弹性、低延迟、JSON 原生支持 |
| 数据类型 |
数据库 |
选型原因 |
| 实时健身反馈 |
ElastiCache Redis |
微秒级响应、即时用户体验 |
Architecture Patterns
Cache-Aside Pattern(旁路缓存)
- 读取:先查缓存,未命中则查数据库并回填缓存
- 写入:先写数据库,再失效/更新缓存
CQRS Pattern(命令查询职责分离)
Event-Driven Data Sync
Trade-offs
| 优势 |
挑战 |
| 最优性能:每个场景用最佳数据库 |
复杂度:多数据库运维成本 |
| 弹性扩展:各层独立扩展 |
一致性:跨数据库事务管理 |
| 成本优化:按需选择规格 |
学习曲线:团队需掌握多种数据库 |
| 容错隔离:单库故障不扩散 |
数据迁移:服务间数据同步 |
Aliases
- Polyglot Persistence
- 多数据库混合架构
- 数据库混合部署
- Database Polyglot
- Mixed Database Architecture
Related Concepts