ออกแบบให้ประสิทธิภาพสูงบทที่ 5/9 · ~12 นาที
Databases: RDS, Aurora, DynamoDB, ElastiCache
เลือก database ตามโมเดลข้อมูล, scale, HA และ performance
จุดที่ออกสอบบ่อยที่สุด
| Multi-AZ | Read Replica | |
|---|---|---|
เป้าหมาย | High availability / failover | กระจายการอ่าน (scale reads) |
Replication | synchronous | asynchronous |
อ่านจาก standby ได้ไหม | ไม่ได้ (ยกเว้น Multi-AZ cluster) | ได้ |
ข้าม Region | ไม่ | ได้ (ใช้ทำ DR) |
| Database | เลือกเมื่อ |
|---|---|
RDS | relational ทั่วไป ย้ายจาก on-prem ง่าย |
Aurora | relational ประสิทธิภาพสูง, replica ได้ 15 ตัว, Global Database, Serverless v2, cloning |
DynamoDB | key-value ขนาดใหญ่ latency ms คงที่, serverless, Global Tables |
ElastiCache | cache/session in-memory ลดภาระ DB |
DAX | cache สำหรับ DynamoDB (microsecond) |
Redshift | data warehouse / analytics (OLAP) |
Neptune | graph |
DocumentDB | MongoDB-compatible |
เช็กความเข้าใจ
DB รับ read traffic หนักจนช้า แต่ write ปกติ วิธีแก้ที่ตรงที่สุด?
อ่านจบแล้ว? ลองทำข้อสอบเรื่องนี้เลย
การดึงความรู้ออกมาใช้ทันทีหลังอ่าน (retrieval practice) ช่วยให้จำได้นานขึ้นมาก