Cơ sở dữ liệu và Mạng
Databases and Networking
Bài này gộp hai nhóm dịch vụ thường xuất hiện cùng nhau trong câu hỏi tình huống: cơ sở dữ liệu và mạng. Mục tiêu là chọn đúng dịch vụ cho từng loại dữ liệu và hiểu các thành phần mạng cơ bản.
Cơ sở dữ liệu
| Dịch vụ | Loại | Dùng khi |
|---|---|---|
| Amazon RDS | Quan hệ (SQL) được quản lý | MySQL, PostgreSQL, SQL Server, Oracle, MariaDB; dữ liệu có cấu trúc, cần JOIN/transaction |
| Amazon Aurora | Quan hệ, tương thích MySQL/PostgreSQL | Hiệu năng cao, do AWS xây dựng, một loại engine của RDS |
| Amazon DynamoDB | NoSQL (key-value/document) | Quy mô lớn, độ trễ mili-giây, không cần schema cố định, serverless |
| Amazon ElastiCache | Cache trong bộ nhớ (Redis/Memcached) | Tăng tốc đọc, giảm tải database |
| Amazon Redshift | Kho dữ liệu (data warehouse) | Phân tích (OLAP) trên khối lượng lớn, báo cáo/BI |
DynamoDB vs RDS
Trọng tâm thi
Dữ liệu quan hệ, có cấu trúc, cần transaction/JOIN → RDS (hoặc Aurora). Dữ liệu cần co giãn cực lớn, độ trễ mili-giây, schema linh hoạt, không cần quản lý máy chủ → DynamoDB (NoSQL). Cần phân tích/báo cáo trên dữ liệu lớn → Redshift. Cần tăng tốc bằng cache → ElastiCache.
Mẹo
RDS Multi-AZ Amazon RDS Multi-AZ tạo bản sao dự phòng ở AZ khác để sẵn sàng cao (tự failover). Read Replica Read Replica dùng để mở rộng khả năng đọc (scale read), không phải để failover.
Mạng (Networking)
Amazon VPC
Amazon VPC Amazon Virtual Private Cloud là mạng ảo riêng của bạn trên AWS, nơi bạn đặt tài nguyên (EC2, RDS...). VPC được chia thành subnet:
- Public subnet: có đường ra Internet (qua Internet Gateway) — cho web server.
- Private subnet: không trực tiếp ra Internet — cho database, backend.
Security Group vs Network ACL
Đây là cặp rất hay bị nhầm:
| Security Group | Network ACL (NACL) | |
|---|---|---|
| Phạm vi | Mức instance | Mức subnet |
| Trạng thái | Stateful (nhớ kết nối, trả về tự động cho phép) | Stateless (phải khai báo cả vào lẫn ra) |
| Quy tắc | Chỉ có rule allow | Có cả rule allow và deny |
Đừng nhầm
Cần chặn (deny) một IP cụ thể ở mức subnet → dùng Network ACL (có rule deny). Security Group không có rule deny — chỉ allow.
Các dịch vụ mạng khác
- Amazon Route 53 Amazon Route 53: dịch vụ DNS + đăng ký tên miền + health check/routing.
- Amazon CloudFront Amazon CloudFront: CDN cache nội dung tại Edge Location để giảm độ trễ toàn cầu.
- AWS Direct Connect AWS Direct Connect: kết nối vật lý riêng (dedicated) từ data center của bạn tới AWS — băng thông ổn định, không qua Internet công cộng.
- AWS VPN AWS Site-to-Site VPN: kết nối mã hóa qua Internet giữa on-premises và VPC — rẻ và nhanh thiết lập hơn Direct Connect.
- Amazon API Gateway Amazon API Gateway: tạo, xuất bản và quản lý API (thường ghép với Lambda để xây dựng backend serverless).
Mẹo
Cần kết nối riêng, ổn định, băng thông cao, độ trễ thấp tới AWS → Direct Connect. Cần kết nối an toàn nhanh chóng qua Internet → VPN.
Tóm tắt
- RDS/Aurora = SQL quan hệ; DynamoDB = NoSQL co giãn; Redshift = data warehouse; ElastiCache = cache.
- RDS Multi-AZ cho HA; Read Replica cho mở rộng đọc.
- VPC = mạng ảo riêng, chia public/private subnet.
- Security Group: mức instance, stateful, chỉ allow. NACL: mức subnet, stateless, có allow+deny.
- Route 53 (DNS), CloudFront (CDN), Direct Connect (kết nối riêng), VPN (qua Internet), API Gateway (API).