Amazon S3 (Simple Storage Service)
Simple Storage Service, Storage Classes, Lifecycle, Security
Tổng quan
Amazon S3 là dịch vụ object storage với khả năng mở rộng không giới hạn, độ bền dữ liệu cao (99.999999999% - 11 nines), và hiệu suất tốt. S3 là một trong những dịch vụ cốt lõi và phổ biến nhất của AWS.
Durability 11 nines là gì?
99.999999999% durability có nghĩa: nếu lưu 10 triệu objects, thống kê bạn sẽ mất 1 object mỗi 10,000 năm.
AWS đạt được điều này bằng cách tự động replicate mỗi object sang ≥3 Availability Zones trong cùng Region - bạn không cần cấu hình gì.
Erasure Coding - Kỹ thuật đằng sau 11 nines
AWS sử dụng Erasure Coding thay vì replicate 3 bản copy đầy đủ, giúp tiết kiệm storage và vẫn đạt durability cao.
Cách hoạt động (ví dụ cấu hình 5+4):
Fault Tolerance:
| Mất chunks | Chunks còn lại | Kết quả |
|---|---|---|
| 0-4 | 5-9 | ✅ Recover được |
| 5+ | < 5 | ❌ Mất data |
Cần ít nhất 5 chunks bất kỳ để rebuild data gốc.
Tại sao vẫn đạt 11 nines?
- Chunks phân tán cross-AZ → mất cả 1 AZ vẫn OK
- Auto-healing: AWS liên tục check và rebuild chunks bị corrupt
- Xác suất mất 5+ chunks đồng thời: ~10^-15
⚠️ Lưu ý: AWS không công bố chính xác cấu hình erasure coding. 5+4 là thông tin từ nguồn phân tích bên ngoài.
Các kỹ thuật Internal khác của S3
1. Checksums & Data Integrity
S3 sử dụng checksums để đảm bảo data không bị corrupt:
2. Shuffle Sharding - Giảm "Blast Radius"
Thay vì assign cố định buckets vào drives, AWS random assign:
Lợi ích:
- Fault isolation: Lỗi không lan rộng
- Giảm blast radius: Mỗi bucket chỉ bị ảnh hưởng một phần
3. Cell-based Architecture
S3 được chia thành các "cells" độc lập:
4. Two Random Choices (Load Balancing)
Khi cần lưu object vào drive:
Tại sao chỉ cần 2?
- Random 1: Có thể chọn trúng drive đã full
- Check tất cả: Quá chậm (hàng nghìn drives)
- Two Random Choices: Nhanh + load khá đều (toán học chứng minh!)
Tổng kết các kỹ thuật
| Kỹ thuật | Mục đích |
|---|---|
| Erasure Coding | Durability với ít storage overhead |
| Checksums | Phát hiện và sửa data corruption |
| Shuffle Sharding | Fault isolation, giảm blast radius |
| Cell Architecture | Isolate failures giữa các cells |
| Two Random Choices | Load balancing storage |
Ngoại lệ (chỉ lưu trong 1 AZ, durability thấp hơn nếu AZ gặp sự cố):
- S3 One Zone-IA
- S3 Express One Zone
Lưu ý: Durability ≠ Availability. S3 Standard có 99.99% availability (có thể unavailable ~52 phút/năm), nhưng data vẫn không bị mất.
Use cases phổ biến:
- Data lakes và big data analytics
- Backup và disaster recovery
- Static website hosting
- Archive và long-term storage
- Media hosting (images, videos)
- Application data storage
Nguồn: What is Amazon S3?
Các khái niệm cơ bản
Buckets
- Container chứa các objects
- Tên bucket phải globally unique trên toàn bộ AWS
- Bucket được tạo trong một Region cụ thể
- 4 loại bucket:
- General purpose buckets - bucket thông thường
- Directory buckets - cho S3 Express One Zone (high performance)
- Table buckets - cho tabular data
- Vector buckets - cho vector storage (ML workloads)
Objects
- Đơn vị lưu trữ cơ bản trong S3
- Bao gồm: data + key (tên) + metadata
- Kích thước tối đa: 5 TB per object
- Upload > 5GB phải dùng multipart upload
Keys
- Unique identifier cho object trong bucket
- Full path:
s3://bucket-name/folder/subfolder/file.txt - Key =
folder/subfolder/file.txt
Versioning
- Lưu giữ nhiều versions của cùng một object
- Bảo vệ khỏi xóa nhầm và overwrite
- Bật ở bucket level
- Mỗi version có Version ID riêng
Storage Classes
S3 cung cấp nhiều storage classes cho các use cases khác nhau. Tất cả đều có durability 99.999999999% (11 nines).
Storage Class được chọn ở đâu?
Lưu ý: Storage class được chọn ở object level, không phải bucket level!
- Khi upload object → chọn storage class cho object đó (Properties → Storage class)
- Hoặc dùng Lifecycle rules để tự động chuyển objects giữa các classes
- Ngoại lệ: S3 Express One Zone dùng Directory buckets - loại bucket riêng, phải chọn khi tạo bucket
Bảng so sánh tổng quan
| Storage Class | AZs | Availability | Min Duration | Min Billable Size | Retrieval Fee |
|---|---|---|---|---|---|
| S3 Standard | ≥3 | 99.99% | None | None | None |
| S3 Express One Zone | 1 | 99.95% | None | None | None |
| S3 Intelligent-Tiering | ≥3 | 99.9% | None | None | None |
| S3 Standard-IA | ≥3 | 99.9% | 30 days | 128 KB* | Có |
| S3 One Zone-IA | 1 | 99.5% | 30 days | 128 KB* | Có |
| S3 Glacier Instant Retrieval | ≥3 | 99.9% | 90 days | 128 KB* | Có |
| S3 Glacier Flexible Retrieval | ≥3 | 99.99%** | 90 days | +40 KB metadata | Có |
| S3 Glacier Deep Archive | ≥3 | 99.99%** | 180 days | +40 KB metadata | Có |
*Min billable size: Bạn vẫn upload được file nhỏ hơn, nhưng bị charge như 128 KB **Sau khi restore
1. S3 Standard
Use case: Frequently accessed data (truy cập > 1 lần/tháng)
- Storage class mặc định
- Millisecond access
- Không có retrieval fee, min duration, min size
- Replicate across ≥3 AZs
Phù hợp cho: Websites, mobile apps, gaming, big data analytics
2. S3 Express One Zone
Use case: Ultra-low latency applications (single-digit milliseconds)
- Nhanh nhất - latency thấp hơn S3 Standard tới 10x
- Rẻ hơn 50% request costs so với S3 Standard
- Chỉ lưu trong 1 AZ (bạn chọn AZ nào)
- Dùng với Directory buckets (không phải general purpose buckets)
Tại sao nhanh hơn?
- Co-location - chọn cùng AZ với EC2/EKS/Lambda → không có network latency cross-AZ
- Custom hardware & software - AWS thiết kế riêng cho low-latency
- Directory buckets - kiến trúc mới, hỗ trợ 2 triệu reads + 200K writes/giây
- Session-based authorization - giảm overhead authentication mỗi request
Tại sao chỉ 1 AZ?
Đây là trade-off có chủ đích:
Cross-AZ replication thêm network latency (vài ms). Để đạt single-digit ms, phải bỏ cross-AZ replication.
Phù hợp cho: ML training, real-time analytics, high-performance computing, cache/temporary data
Trade-off: Không resilient nếu AZ gặp sự cố - chỉ dùng cho data có thể tái tạo hoặc đã có backup ở nơi khác
3. S3 Intelligent-Tiering
Use case: Data có access patterns không biết trước hoặc thay đổi
"Access patterns không biết trước" là gì?
Đặc điểm:
- Tự động di chuyển objects giữa các tiers - không cần quản lý
- Không có retrieval fees (3 tiers đầu)
- Có monitoring fee nhỏ per object (~$0.0025/1000 objects/month)
- Objects < 128 KB không được monitor, luôn ở Frequent Access tier
5 Access Tiers (bên trong Intelligent-Tiering, không phải storage classes khác):
| Tier | Khi nào chuyển | Retrieval |
|---|---|---|
| Frequent Access | Default khi upload | Milliseconds |
| Infrequent Access | Sau 30 ngày không access | Milliseconds |
| Archive Instant Access | Sau 90 ngày không access | Milliseconds |
| Archive Access (optional) | Sau 90+ ngày, cần activate | 3-5 hours |
| Deep Archive Access (optional) | Sau 180+ ngày, cần activate | 12 hours |
Lưu ý: Archive Access và Deep Archive Access tiers cần restore trước khi access.
So sánh Intelligent-Tiering vs Lifecycle Rules:
| Intelligent-Tiering | Lifecycle Rules | |
|---|---|---|
| Monitoring fee | ~$0.0025/1000 objects/tháng | Không |
| Retrieval fee | Không (3 tiers đầu) | Có (từ IA, Glacier) |
| Cấu hình | Không cần | Phải tự định nghĩa rules |
| Di chuyển | Tự động theo access thực tế | Theo thời gian cố định |
Tóm lại:
- Biết chắc access pattern → Lifecycle rules (tiết kiệm monitoring fee)
- Không biết / thay đổi → Intelligent-Tiering (tiết kiệm retrieval fee)
4. S3 Standard-IA (Infrequent Access)
Use case: Long-lived data, truy cập không thường xuyên (~1 lần/tháng), cần millisecond access
- Giá storage rẻ hơn S3 Standard
- Có retrieval fee per GB
- Min storage duration: 30 ngày (xóa sớm vẫn bị charge 30 ngày)
- Min billable size: 128 KB (object nhỏ hơn vẫn bị charge 128 KB)
- Replicate across ≥3 AZs
Phù hợp cho: Backups, disaster recovery, older data cần truy cập nhanh
Khi nào dùng: Dữ liệu không thể tái tạo được
5. S3 One Zone-IA
Use case: Giống Standard-IA nhưng chấp nhận risk mất data nếu AZ fail
- Rẻ hơn ~20% so với Standard-IA
- Chỉ lưu trong 1 AZ
- Min storage duration: 30 ngày
- Min billable size: 128 KB
Phù hợp cho:
- Secondary backup copies
- Data có thể tái tạo được
- Cross-Region Replication destination
Trade-off: Mất data nếu AZ bị destroy (động đất, lũ lụt)
6. S3 Glacier Instant Retrieval
Use case: Archive data, hiếm khi access (~1 lần/quý), nhưng cần millisecond retrieval
- Storage cost thấp hơn Standard-IA 68%
- Millisecond access - không cần restore
- Min storage duration: 90 ngày
- Min billable size: 128 KB
- Retrieval fee cao hơn Standard-IA
Phù hợp cho: Medical images, news media assets, user-generated content archives
"Restore" là gì?
Một số storage classes (Glacier Flexible, Deep Archive) lưu data trên cold storage (có thể là tape) để giảm giá. Khi cần access, phải "restore" trước:
Tại sao thiết kế vậy? Đổi lại thời gian chờ → giá storage rẻ hơn rất nhiều.
7. S3 Glacier Flexible Retrieval
Use case: Archive data, access ~1 lần/năm, không cần immediate access
- Storage cost rất thấp
- Min storage duration: 90 ngày
- Phải restore trước khi access (không real-time)
Retrieval options:
| Option | Thời gian | Cost |
|---|---|---|
| Expedited | 1-5 minutes | Cao nhất |
| Standard | 3-5 hours | Trung bình |
| Bulk | 5-12 hours | Thấp nhất |
Phù hợp cho: Backup, disaster recovery, compliance archives
8. S3 Glacier Deep Archive
Use case: Long-term archive, access < 1 lần/năm, lưu trữ 7-10+ năm
- Rẻ nhất trong tất cả storage classes
- Min storage duration: 180 ngày
- Phải restore trước khi access
Retrieval options:
| Option | Thời gian |
|---|---|
| Standard | 12 hours |
| Bulk | 48 hours |
Phù hợp cho: Compliance archives (financial, healthcare), magnetic tape replacement
Lưu ý quan trọng về Min Duration và Min Size
Storage Management
S3 Lifecycle
Tự động chuyển objects giữa storage classes hoặc xóa sau một thời gian:
Matrix transition storage class (Lifecycle)
S3 Lifecycle hỗ trợ transition theo mô hình "waterfall" (đi xuống lớp rẻ hơn), không phải mọi cặp source/destination đều hợp lệ.
| Từ storage class | Có thể transition sang (qua Lifecycle) |
|---|---|
S3 Standard | Standard-IA, Intelligent-Tiering, One Zone-IA, Glacier Instant Retrieval, Glacier Flexible Retrieval, Glacier Deep Archive |
S3 Standard-IA | Intelligent-Tiering, One Zone-IA, Glacier Instant Retrieval, Glacier Flexible Retrieval, Glacier Deep Archive |
S3 Intelligent-Tiering | Phụ thuộc access tier; có thể sang One Zone-IA hoặc các lớp Glacier tương ứng |
S3 One Zone-IA | Glacier Flexible Retrieval, Glacier Deep Archive |
S3 Glacier Instant Retrieval | Glacier Flexible Retrieval, Glacier Deep Archive |
S3 Glacier Flexible Retrieval | Glacier Deep Archive |
Các transition hay nhầm trong đề thi:
- ❌
S3 Intelligent-Tiering => S3 Standard(không được hỗ trợ bởi Lifecycle) - ❌
S3 One Zone-IA => S3 Standard-IA(không được hỗ trợ bởi Lifecycle) - ✅
S3 Standard-IA => S3 One Zone-IA(được hỗ trợ)
Nguồn: Transitioning objects using Amazon S3 Lifecycle, Using S3 Intelligent-Tiering
S3 Replication
Lưu ý: Đây là tính năng bạn tự cấu hình, khác với việc AWS tự động replicate sang 3 AZs!
2 loại replication khác nhau:
| Automatic (3 AZs) | S3 Replication (CRR/SRR) | |
|---|---|---|
| Cấu hình | AWS tự động làm | Bạn phải tự setup |
| Scope | Trong cùng 1 bucket, cùng Region | Sang bucket khác |
| Mục đích | Durability 11 nines | DR, compliance, latency |
| Control | Không control được | Bạn chọn destination |
Các loại S3 Replication:
- Cross-Region Replication (CRR) - replicate sang Region khác
- Same-Region Replication (SRR) - replicate trong cùng Region
Yêu cầu: Versioning phải enabled ở cả source và destination bucket
Use cases:
- CRR: Disaster recovery, compliance (data phải ở EU), giảm latency cho users ở region khác
- SRR: Aggregate logs từ nhiều buckets, copy giữa dev/prod accounts
Xem thêm: AWS Overview - Regions và AZs để hiểu về Region, AZ
S3 Object Lock
Chống xóa/overwrite objects theo mô hình WORM (Write Once Read Many) - thường dùng cho compliance.
2 cách bảo vệ:
| Retention Period | Legal Hold | |
|---|---|---|
| Thời hạn | Cố định (vd: 365 ngày) | Không có, cho đến khi tắt |
| Use case | Compliance, regulatory | Litigation, điều tra, audit |
| Kết thúc | Tự động hết hạn | Phải manually remove |
2 Retention Modes:
Ví dụ thực tế:
Yêu cầu & lưu ý:
- Versioning phải enabled
- Object Lock phải enable khi tạo bucket (không thể enable sau với existing bucket)
- Một khi enable, không thể disable
Nguồn: S3 Object Lock
S3 Batch Operations
- Thực hiện operations trên hàng triệu/tỷ objects
- Operations: Copy, Invoke Lambda, Restore, Tagging, etc.
Access Management & Security
Default Security
- Buckets và objects mặc định là private
- Chỉ owner/account administrator có access
Access Control Methods
| Method | Scope | Use Case |
|---|---|---|
| IAM Policies | User/Role level | Control user access to S3 |
| Bucket Policies | Bucket level | Cross-account, public access |
| Access Points | Named endpoints | Simplified access for shared datasets |
| ACLs | Object/Bucket level | Legacy, không khuyến khích |
| S3 Block Public Access | Account/Bucket level | Prevent public access |
Bucket Policy Example
Encryption
Server-Side Encryption (SSE):
- SSE-S3 - AWS managed keys (default từ Jan 2023)
- SSE-KMS - Customer managed keys via KMS
- SSE-C - Customer-provided keys
- DSSE-KMS - Dual-layer encryption
Client-Side Encryption:
- Encrypt trước khi upload
S3 Object Ownership
- Bucket owner enforced (recommended) - disable ACLs, bucket owner owns all objects
- Bucket owner preferred - bucket owner owns objects nếu upload với
bucket-owner-full-control - Object writer - uploader owns the object
Xem chi tiết: S3 Security - Access Control, Encryption, Block Public Access, Pre-signed URLs, VPC Endpoints
Nguồn: Amazon S3 Security Features
S3 Performance
Baseline Performance
S3 có khả năng xử lý rất cao out-of-the-box:
| Metric | Per Prefix |
|---|---|
| GET/HEAD requests | 5,500 requests/second |
| PUT/COPY/POST/DELETE | 3,500 requests/second |
Prefix = phần path trước object name. Ví dụ:
bucket/folder1/subfolder/là 1 prefix.
Tối ưu Performance
1. Multi-Part Upload
Bắt buộc cho files > 5GB, khuyến nghị cho files > 100MB.
2. S3 Transfer Acceleration
Upload/download qua AWS Edge Locations thay vì public internet.
- Endpoint:
bucket-name.s3-accelerate.amazonaws.com - Chỉ charge khi thực sự nhanh hơn
- Tốt cho: long-distance transfers, large files
3. Byte-Range Fetches (Parallel Downloads)
Download một phần file hoặc download song song nhiều phần.
Use cases:
- Parallel download để tăng tốc
- Download chỉ metadata/header của file
- Resume download bị gián đoạn
4. S3 Select / Glacier Select
Query data trực tiếp trong S3 mà không cần download toàn bộ file.
Hỗ trợ formats: CSV, JSON, Parquet
Tóm tắt Performance Optimizations
| Technique | Use Case | Benefit |
|---|---|---|
| Multi-Part Upload | Files > 100MB | Parallel upload, retry parts |
| Transfer Acceleration | Long distance | Faster via Edge Locations |
| Byte-Range Fetches | Large downloads | Parallel download, partial fetch |
| S3 Select | Query large files | Reduce data transfer |
| Multiple Prefixes | High throughput | Scale requests linearly |
Nguồn: S3 Performance Guidelines
Data Processing
S3 Object Lambda
S3 Object Lambda cho phép thêm code để transform data on-the-fly khi GET object, mà không cần sửa object gốc.
Cách hoạt động
- App gọi Object Lambda Access Point (không gọi trực tiếp S3)
- Object Lambda Access Point invoke Lambda function
- Lambda lấy object gốc từ S3, transform, trả về cho app
Use Cases phổ biến
| Use Case | Mô tả |
|---|---|
| Resize images | Trả về thumbnail thay vì image gốc |
| Redact PII | Che thông tin nhạy cảm (SSN, email...) |
| Convert formats | XML → JSON, PNG → WebP |
| Decompress | Gunzip on-the-fly |
| Add watermark | Thêm watermark vào images |
| Filter data | Trả về subset của data dựa trên user role |
| Enrich data | Thêm metadata từ external source |
Ví dụ: Redact PII
Lambda Function Example (Node.js)
So sánh với các giải pháp khác
| Approach | Storage | Performance | Flexibility |
|---|---|---|---|
| Store multiple versions | ❌ Nhiều | ✅ Nhanh | ❌ Phải sync |
| Transform on client | ✅ 1 bản | ❌ Chậm | ✅ Linh hoạt |
| S3 Object Lambda | ✅ 1 bản | ⚡ Tốt | ✅ Linh hoạt |
Pricing
- Lambda invocation: Tính như Lambda bình thường
- Data transfer: Từ S3 → Lambda → Client
- No additional Object Lambda fee
💡 Khi nào dùng: Khi cần transform data nhưng không muốn lưu nhiều versions, hoặc transformation phụ thuộc vào context (user role, request params...).
Event Notifications
Trigger workflows khi có changes trong S3.
Cách hoạt động
Các loại Events
| Event Type | Trigger khi |
|---|---|
s3:ObjectCreated:* | PUT, POST, COPY, MultipartUpload complete |
s3:ObjectRemoved:* | DELETE hoặc DeleteMarkerCreated |
s3:ObjectRestore:* | Glacier restore bắt đầu/hoàn thành |
s3:Replication:* | Replication failed/completed |
s3:LifecycleExpiration:* | Object bị xóa bởi lifecycle |
s3:LifecycleTransition | Object chuyển storage class |
s3:IntelligentTiering | Object chuyển tier trong IT |
Destinations
| Destination | Use Case | Đặc điểm |
|---|---|---|
| Amazon SNS | Fan-out (gửi đến nhiều subscribers) | Push notifications, email, SMS |
| Amazon SQS | Queue xử lý tuần tự | Decoupling, retry, batch processing |
| AWS Lambda | Serverless processing | Real-time, custom code |
| EventBridge | Complex routing, filtering | Rules, cross-account, archive |
So sánh Destinations
Use Cases phổ biến
| Use Case | Event | Destination | Action |
|---|---|---|---|
| Image thumbnail | ObjectCreated | Lambda | Resize, save thumbnail |
| Video transcoding | ObjectCreated | SQS → MediaConvert | Convert video formats |
| Log processing | ObjectCreated | Lambda → ES | Index logs cho search |
| Backup notification | ObjectCreated | SNS → Email | Notify admin |
| Data pipeline | ObjectCreated | EventBridge → Step Functions | ETL workflow |
| Audit trail | All events | EventBridge → CloudWatch Logs | Logging |
Ví dụ: Image Processing Pipeline
Lưu ý quan trọng
[!IMPORTANT] Permissions: Destination (SNS/SQS/Lambda) phải có policy cho phép S3 gửi events.
[!TIP] EventBridge vs Legacy (SNS/SQS/Lambda):
- Legacy: Faster, simpler, direct integration
- EventBridge: More powerful filtering, routing rules, cross-account, archive events
Monitoring & Analytics
Monitoring Tools
| Tool | Purpose |
|---|---|
| CloudWatch Metrics | Monitor operational health |
| CloudTrail | API logging và auditing |
| Server Access Logging | Detailed request logs |
| S3 Storage Lens | 60+ metrics, dashboards |
Analytics
- Storage Class Analysis - phân tích access patterns để tối ưu storage class
- S3 Inventory - báo cáo objects và metadata
Data Consistency
S3 cung cấp strong read-after-write consistency:
- PUT new object → immediately readable
- PUT overwrite → immediately see new version
- DELETE → immediately not found
Applies to tất cả AWS Regions.
Pricing
S3 tính phí theo:
- Storage - GB per month
- Requests - PUT, COPY, POST, LIST, GET, SELECT
- Data Transfer - OUT to internet, cross-region
- Management features - Inventory, Analytics, Object Tagging
Free Tier (12 months):
- 5 GB S3 Standard storage
- 20,000 GET requests
- 2,000 PUT requests
Nguồn: Amazon S3 Pricing
Requester Pays
Requester Pays cho phép bucket owner chuyển chi phí data transfer và request sang cho người request (requester) thay vì trả tiền tất cả.
Vấn đề cần giải quyết
Chi phí được chuyển cho Requester
| Chi phí | Bucket Owner | Requester |
|---|---|---|
| Storage | ✅ Trả | - |
| Data Transfer OUT | - | ✅ Trả |
| GET/PUT Requests | - | ✅ Trả |
| Same-region transfer | - | Miễn phí |
Cách hoạt động
Lưu ý quan trọng:
- ❌ Anonymous access không hoạt động - Requester PHẢI có AWS account
- ❌ Không thể dùng pre-signed URLs (vì cần authenticated request)
- ✅ Bucket owner vẫn control access qua bucket policy
Use Cases
| Use Case | Mô tả |
|---|---|
| Public datasets | NASA, genome data, weather data - ai dùng, người đó trả |
| Data marketplace | Bán/share data mà không lo chi phí bandwidth |
| Research data | Universities share research data |
| Media archives | Stock photos/videos, download theo nhu cầu |
Ví dụ CLI
Enable Requester Pays
Nguồn: Using Requester Pays buckets
Best Practices
- Enable versioning để bảo vệ khỏi accidental deletes
- Use Lifecycle policies để tối ưu costs
- Enable S3 Block Public Access trừ khi cần public
- Use SSE-KMS cho sensitive data
- Enable CloudTrail để audit access
- Use S3 Intelligent-Tiering nếu không biết access patterns
- Use multipart upload cho files > 100MB
- Use S3 Transfer Acceleration cho long-distance transfers
S3 Transfer Acceleration
Tăng tốc upload/download files qua long distances bằng AWS Edge Locations.
Key points:
- Dùng endpoint:
bucket-name.s3-accelerate.amazonaws.com - Chỉ charge khi nhanh hơn (AWS tự động bypass nếu không cải thiện)
- Pricing: ~$0.04-0.08/GB
- Hiệu quả nhất khi: client xa bucket, file lớn
📖 Xem chi tiết: S3 Transfer Acceleration Deep Dive
S3 Transfer Acceleration vs Global Accelerator
⚠️ Câu hỏi thường gặp: Hai dịch vụ này KHÁC NHAU nhưng cùng dùng AWS Edge Locations!
| Feature | S3 Transfer Acceleration | Global Accelerator |
|---|---|---|
| Mục đích | Tăng tốc S3 upload/download | Tăng tốc any TCP/UDP app |
| Hỗ trợ S3? | ✅ Có (chính) | ❌ Không |
| Hỗ trợ ALB/EC2? | ❌ Không | ✅ Có |
| Static IP | ❌ Không | ✅ 2 Anycast IPs |
| Failover | ❌ Không | ✅ Instant failover |
| Cách bật | Per-bucket setting | Tạo Accelerator riêng |
💡 Tóm lại: S3 Transfer Acceleration = "Global Accelerator cho riêng S3"
So sánh với EBS và EFS
| Feature | S3 | EBS | EFS |
|---|---|---|---|
| Type | Object storage | Block storage | File storage |
| Access | HTTP/HTTPS API | Attached to EC2 | NFS mount |
| Scope | Regional | Single AZ | Regional |
| Max size | Unlimited | 64 TiB/volume | Unlimited |
| Use case | Static files, backups | OS, databases | Shared files |
Liên kết
- EBS - Block storage cho EC2
- EFS - Shared file storage
- IAM - Access management
- VPC - Network configuration