What you will learn today
- Amazon S3, S3 storage classes, and S3 Glacier
- EBS, EFS, and FSx
- Hybrid storage and data transfer (Storage Gateway, DataSync, Snow Family)
- RDS, Aurora, DynamoDB, ElastiCache, and Redshift
- Other purpose-built databases
- Database selection concepts
PART A: STORAGE
1. The three types of storage
1
2
3
4
5
6
7
OBJECT storage BLOCK storage FILE storage
(files as objects (raw disk volumes, (shared folders,
+ metadata, via attach to a server) many servers at once)
HTTP/API)
| | |
Amazon S3 Amazon EBS Amazon EFS
S3 Glacier EC2 Instance Store Amazon FSx
| Object | Objects with metadata in buckets, accessed via URL/API | Images, backups, logs, static websites, data lakes | S3 | A giant warehouse where each box has a label |
| Block | Fixed-size blocks, like a hard drive | Operating systems, databases needing low latency | EBS | A hard drive plugged into your computer |
| File | Files and folders in a hierarchy | Shared content, home directories | EFS, FSx | A shared network drive in an office |
2. Amazon S3 (Simple Storage Service)
S3 is object storage with virtually unlimited capacity, designed for 99.999999999% (11 nines) durability. Data is stored redundantly across at least three AZs in a Region (except One Zone classes).
| Bucket | Container for objects. Name must be globally unique; created in a specific Region |
| Object | File plus metadata, identified by a key (its name/path) |
| Object size | 0 bytes up to 5 TB per object (use multipart upload for large files) |
| Access | Console, CLI, SDK, REST API, pre-signed URLs |
| Consistency | Strong read-after-write consistency |
| Use cases | Backup and restore, static website hosting, data lakes, media, archives, software delivery |
S3 storage classes (very commonly tested)
1
2
3
4
5
6
Access frequency HIGH ---------------------------------------------> LOW
Cost per GB HIGH ---------------------------------------------> LOW
Retrieval speed instant ........................................... hours
[ S3 Standard ] [ Intelligent-Tiering ] [ Standard-IA ] [ One Zone-IA ]
[ Glacier Instant ] [ Glacier Flexible ] [ Glacier Deep Archive ]
| S3 Standard | Frequently accessed data | 3+ AZs | Milliseconds | None | Default, "hot" data |
| S3 Intelligent-Tiering | Unknown or changing access patterns | 3+ AZs | Milliseconds (frequent/infrequent/archive-instant tiers) | None | Automatic cost savings, no retrieval fees |
| S3 Standard-IA (Infrequent Access) | Long-lived data accessed less often but needs rapid access | 3+ AZs | Milliseconds | 30 days | Cheaper storage, retrieval fee |
| S3 One Zone-IA | Infrequently accessed, re-creatable data | 1 AZ | Milliseconds | 30 days | Cheapest IA, data lost if the AZ is destroyed |
| S3 Glacier Instant Retrieval | Archive needing millisecond access (quarterly access) | 3+ AZs | Milliseconds | 90 days | Archive with instant access |
| S3 Glacier Flexible Retrieval | Archive, rarely accessed | 3+ AZs | Minutes to hours (expedited 1-5 min, standard 3-5 hrs, bulk 5-12 hrs) | 90 days | Low-cost archive |
| S3 Glacier Deep Archive | Long-term retention (7 to 10+ years), compliance | 3+ AZs | 12 hours (standard) to 48 hours (bulk) | 180 days | Lowest cost |
| S3 Express One Zone | Latency-critical, high-performance single-digit ms workloads | 1 AZ | Consistent single-digit ms | None | Fastest S3 |
Exam clue: "Unknown or changing access pattern" = Intelligent-Tiering. "Cheapest, archive, 12 hours retrieval acceptable" = Glacier Deep Archive. "Infrequent but needs fast access, can't recreate" = Standard-IA. "Infrequent and can re-create" = One Zone-IA.
Key S3 features
| Versioning | Keep multiple versions of an object; protects against accidental deletes and overwrites |
| Lifecycle policies | Automatically transition objects between classes or expire (delete) them after a time |
| Cross-Region Replication (CRR) / Same-Region Replication (SRR) | Automatically copy objects to another bucket (needs versioning) |
| Encryption | SSE-S3 (S3-managed keys, default for new objects), SSE-KMS, SSE-C, client-side |
| Block Public Access | Account/bucket-level setting to prevent accidental public exposure |
| Bucket policies, IAM, ACLs | Control access (prefer policies; ACLs are legacy) |
| Pre-signed URLs | Time-limited access to a private object |
| Static website hosting | Serve HTML, CSS, JS directly from a bucket |
| S3 Transfer Acceleration | Faster uploads from far away using CloudFront edge locations |
| Multipart upload | Upload large objects in parts (recommended over 100 MB, required above 5 GB) |
| S3 Object Lock | WORM (write once, read many); prevents deletion for a retention period (compliance) |
| S3 Glacier Vault Lock | WORM policy for Glacier vaults |
| MFA Delete | Require MFA to permanently delete versions |
| S3 Event Notifications | Trigger Lambda, SQS, SNS when objects change |
| S3 Access Points / Storage Lens | Simplify access management / analytics and visibility |
| Requester Pays | The requester pays data transfer, not the bucket owner |
1
2
Lifecycle example:
Day 0: S3 Standard --30 days--> Standard-IA --90 days--> Glacier Flexible --365 days--> Delete
S3 pricing dimensions: storage per GB, requests (PUT, GET), data transfer out to the internet, retrieval fees (IA and Glacier), management features. Data transfer IN is free.
Analogy: S3 is a limitless warehouse. Standard is the front shelf, Standard-IA is the back shelf, Glacier is the basement archive, and Deep Archive is the off-site vault.
3. Block storage: Amazon EBS and instance store
| Persistence | Persistent; survives stop and start | Temporary; lost on stop or terminate |
| Attached to | One EC2 instance at a time (most volumes) in the same AZ | Physical host of the instance |
| Performance | Good to very high (SSD or HDD) | Very high I/O |
| Backups | Snapshots stored in S3 (incremental) | None |
| Best for | Boot volumes, databases | Caches, scratch data, buffers |
EBS volume types
| General purpose SSD | gp3, gp2 | Most workloads, boot volumes |
| Provisioned IOPS SSD | io2, io1 | Critical, I/O-intensive databases |
| Throughput optimized HDD | st1 | Big data, streaming, log processing |
| Cold HDD | sc1 | Infrequently accessed, lowest cost |
| Snapshots | Point-in-time backups; can copy across Regions; restore to new volumes |
| Encryption | KMS-based, applies to volume, snapshots, and data in transit to the instance |
| AZ-bound | To move to another AZ or Region, snapshot then restore |
| Elastic Volumes | Change size or type without detaching |
| Data Lifecycle Manager | Automate snapshot creation and retention |
Exam trap: EBS lives in one AZ. S3 lives across multiple AZs. EFS is multi-AZ.
4. File storage: EFS and FSx
| Amazon EFS (Elastic File System) | Fully managed, elastic NFS file system | Linux | Mounted by thousands of instances at once, across AZs; grows and shrinks automatically; pay for what you use; Standard and Infrequent Access classes |
| Amazon FSx for Windows File Server | Managed Windows file shares (SMB) | Windows | Active Directory integration |
| Amazon FSx for Lustre | High-performance file system | Linux | HPC, machine learning, integrates with S3 |
| Amazon FSx for NetApp ONTAP | NetApp features in AWS | Multi-protocol | Lift-and-shift NetApp users |
| Amazon FSx for OpenZFS | Managed OpenZFS | Linux/Unix | Migrate ZFS workloads |
EBS vs EFS vs S3 vs Instance Store
| Type | Object | Block | File (NFS) | Block (ephemeral) |
| Shared by many servers | Yes (via API) | No (one instance) | Yes | No |
| Multi-AZ | Yes | No (single AZ) | Yes | No |
| Persistent | Yes | Yes | Yes | No |
| Scales automatically | Yes | Manual resize | Yes | No |
| Typical use | Backups, static content | Boot disk, DB | Shared Linux files | Temporary cache |
1
2
3
4
5
6
7
8
Which storage?
Store images/backups/website files .............. S3
Disk for ONE EC2 instance / database ............ EBS
Shared Linux file system for MANY instances ..... EFS
Windows file shares (SMB) ....................... FSx for Windows
HPC / ML high-speed file system ................. FSx for Lustre
Very fast temporary scratch space ............... Instance Store
Cheap long-term archive ......................... S3 Glacier
5. Hybrid storage, backup, and data transfer
| AWS Storage Gateway | Hybrid storage connecting on-premises to cloud (File, Volume, Tape gateways) | "On-premises app needs cloud storage", "replace tapes" |
| AWS Backup | Centralized, policy-based backup across AWS services | "Centrally manage backups" |
| AWS Elastic Disaster Recovery | Recover servers quickly to AWS | "Disaster recovery for servers" |
| AWS DataSync | Online transfer of large datasets between on-premises and AWS storage (S3, EFS, FSx) | "Automate online data transfer" |
| AWS Transfer Family | SFTP, FTPS, FTP into S3 or EFS | "Existing SFTP workflows" |
| AWS Snow Family | Physical devices for offline data transfer and edge compute | "Network too slow, move terabytes to petabytes" |
Snow Family quick guide
| Snowcone | Small (up to 8 TB HDD, 14 TB SSD) | Edge computing, small transfers, portable |
| Snowball Edge (Storage or Compute optimized) | Tens of TB per device | Large migrations, edge processing |
| Snowmobile | Up to 100 PB, a shipping container on a truck | Exabyte-scale migrations |
Availability of individual Snow devices changes over time, but the exam concept is the same: offline physical transfer when networks are too slow or too costly.
1
2
3
4
5
Moving data to AWS?
Enough bandwidth, ongoing ......... DataSync (or Direct Connect)
Very large, slow network .......... Snowball / Snowmobile
Legacy SFTP clients ............... Transfer Family
On-premises app, cloud-backed ..... Storage Gateway
PART B: DATABASES
6. Database types at a glance
1
2
3
4
5
RELATIONAL (SQL) NoSQL Other purpose-built
tables, rows, joins key-value, document, in-memory, graph, ledger,
wide-column time-series, warehouse
RDS, Aurora DynamoDB, DocumentDB, ElastiCache, Neptune,
Keyspaces QLDB, Timestream, Redshift
| Structure | Fixed schema, tables | Flexible schema |
| Query | SQL with joins | Key-based or document queries |
| Scaling | Vertical (plus read replicas) | Horizontal at massive scale |
| Use | Transactions, ERP, CRM | Mobile, gaming, IoT, high-scale web |
7. Amazon RDS (Relational Database Service)
RDS is a managed relational database service. AWS handles hardware, OS patching, database software patching, backups, and failover. You manage the data, schema, queries, and access.
| MySQL, PostgreSQL, MariaDB | Open source engines |
| Oracle, Microsoft SQL Server | Commercial engines (license options) |
| Amazon Aurora | AWS's cloud-native engine (MySQL and PostgreSQL compatible) |
| Db2 | Also supported |
| Multi-AZ deployment | Synchronous standby copy in another AZ; automatic failover | High availability, disaster recovery |
| Read Replicas | Asynchronous copies used to offload read traffic (can be cross-Region) | Performance, read scaling |
| Automated backups | Daily snapshots plus transaction logs, point-in-time restore (retention up to 35 days) | Recovery |
| Manual snapshots | You create; kept until you delete | Long-term backup |
| Encryption | At rest with KMS, in transit with SSL/TLS | Security |
| RDS Proxy | Pooled connections to protect the database | Lambda to RDS scaling |
| Storage auto scaling | Grows storage automatically | Operations |
Exam trap: Multi-AZ = availability (standby, not used for reads). Read replicas = performance (used for reads). You cannot SSH into RDS instances because AWS manages the OS.
RDS vs running a database on EC2
| OS and DB patching | AWS | You |
| Backups and failover | Built in | You build them |
| OS-level access | No | Yes |
| Best when | You want less operations work | You need full control |
8. Amazon Aurora
| Compatibility | MySQL and PostgreSQL |
| Performance | Up to 5x MySQL and 3x PostgreSQL throughput (AWS claims) |
| Storage | Automatically grows up to 128 TiB; six copies across three AZs |
| Replicas | Up to 15 read replicas with low lag |
| Availability | Fast failover, self-healing storage |
| Aurora Serverless | Automatically scales capacity up and down; pay per use |
| Aurora Global Database | Cross-Region replication for low-latency global reads and disaster recovery |
| Cost | Roughly 1/10th the cost of commercial databases (AWS claim) |
9. Amazon DynamoDB
DynamoDB is a fully managed, serverless NoSQL key-value and document database with single-digit millisecond performance at any scale.
| Data model | Tables, items, attributes; primary key (partition key, optional sort key) |
| Capacity modes | On-demand (pay per request, auto scaling) or provisioned (set read/write capacity) |
| Global Tables | Multi-Region, multi-active replication |
| DAX (DynamoDB Accelerator) | In-memory cache giving microsecond reads |
| DynamoDB Streams | Capture item changes (trigger Lambda) |
| TTL | Automatically expire items |
| Backup | On-demand backups and point-in-time recovery |
| Availability | Data replicated across 3 AZs |
| Security | Encryption at rest, IAM, fine-grained access |
Analogy: DynamoDB is a giant, lightning-fast index-card box: you find a card instantly by its label, no matter how many cards exist.
10. Amazon ElastiCache and MemoryDB
| Amazon ElastiCache | Managed in-memory cache with Redis OSS / Valkey and Memcached engines | Reduce database load, session stores, leaderboards, sub-millisecond reads |
| Amazon MemoryDB | Redis-compatible, durable in-memory primary database | When you need a durable in-memory database |
Analogy: ElastiCache is a sticky note on your monitor: instant answers for things you need constantly, without walking to the filing cabinet (database).
11. Amazon Redshift (data warehouse)
| Purpose | Data warehouse for analytics and BI on structured data (OLAP) |
| Scale | Petabytes of data, columnar storage, massively parallel processing |
| SQL | Standard SQL, works with BI tools such as QuickSight |
| Redshift Spectrum | Query data directly in S3 |
| Redshift Serverless | No cluster management |
| Many small transactions (orders, payments) | Complex analytical queries over large data |
| RDS, Aurora, DynamoDB | Redshift |
12. Other purpose-built databases
| Amazon DocumentDB | Document (MongoDB compatible) | JSON documents, content management | "MongoDB" |
| Amazon Neptune | Graph | Social networks, fraud detection, knowledge graphs | "Relationships", "graph" |
| Amazon Keyspaces | Wide-column (Apache Cassandra compatible) | Cassandra workloads | "Cassandra" |
| Amazon QLDB | Ledger (immutable, cryptographically verifiable) | Transaction history; AWS has announced it is being retired, so learn the concept but expect it less | "Immutable ledger" |
| Amazon Timestream | Time-series | IoT, application metrics | "Time series" |
| Amazon OpenSearch Service | Search and log analytics | Search engines, log analysis | "Search" |
| AWS Database Migration Service (DMS) | Migrate databases with minimal downtime | Homogeneous and heterogeneous migrations | "Migrate a database" |
| AWS Schema Conversion Tool (SCT) | Convert schemas between engines | Oracle to PostgreSQL | "Convert schema" |
13. Database selection flowchart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
What does the workload need?
|
Relational, SQL, joins, transactions? ----yes----> RDS or Aurora
| (Aurora for high performance / cloud-native)
no
|
Massive scale, key-value, millisecond latency, serverless? --yes--> DynamoDB
|
Reduce database load / caching / sub-millisecond reads? ----yes--> ElastiCache (DAX for DynamoDB)
|
Large-scale analytics / data warehouse / BI? ----------------yes--> Redshift
|
Relationships / graph? ---------------------------------------yes--> Neptune
|
MongoDB-compatible documents? -------------------------------yes--> DocumentDB
|
Time-series / IoT metrics? ----------------------------------yes--> Timestream
|
Full-text search / log search? -------------------------------yes--> OpenSearch Service
|
Query files in S3 with SQL, no servers? ---------------------yes--> Athena (Day 6)
| Managed relational database | RDS |
| 5x faster than MySQL, cloud-native, 15 replicas | Aurora |
| Serverless NoSQL | DynamoDB |
| In-memory cache | ElastiCache |
| Data warehouse | Redshift |
| Graph | Neptune |
| MongoDB | DocumentDB |
| Migrate databases | DMS |
| Run a custom or unsupported database with OS access | EC2 with your own database |
14. Exam traps for Day 4
| EBS is multi-AZ | EBS volumes live in one AZ |
| Instance store is persistent | Not persistent; lost when instance stops/terminates |
| S3 Glacier is a separate product from S3 | It is a set of S3 storage classes |
| S3 bucket names are Region-unique | They are globally unique |
| Multi-AZ RDS improves read performance | No, use read replicas |
| DynamoDB needs servers | Serverless, fully managed |
| Redshift is for transactions | It is for analytics |
| EFS works with Windows | EFS is for Linux; use FSx for Windows |
| DataSync and Snowball are the same | DataSync = online; Snow = offline physical |
| Data transfer into S3 is charged | Data in is free; data out is charged |
15. Key takeaways
- S3 = object, EBS = block (one instance, one AZ), EFS = shared Linux files, FSx = specialized file systems.
- Memorize the S3 classes: Standard, Intelligent-Tiering, Standard-IA, One Zone-IA, Glacier Instant, Glacier Flexible, Glacier Deep Archive.
- RDS/Aurora = relational. DynamoDB = serverless NoSQL. ElastiCache = cache. Redshift = warehouse.
- Multi-AZ = availability. Read replicas = performance.
16. Day 4 practice questions
| 1 | Which S3 class suits rarely accessed data kept 10 years at the lowest cost? | S3 Glacier Deep Archive |
| 2 | Which storage can be shared by many Linux EC2 instances in multiple AZs? | Amazon EFS |
| 3 | Which service is a serverless NoSQL database? | Amazon DynamoDB |
| 4 | Which storage is lost when an EC2 instance is stopped? | EC2 Instance Store |
| 5 | Which service is a data warehouse? | Amazon Redshift |
| 6 | Which S3 class automatically moves objects between access tiers? | S3 Intelligent-Tiering |
| 7 | Which RDS feature provides automatic failover to another AZ? | Multi-AZ deployment |
| 8 | Which RDS feature helps scale read-heavy workloads? | Read replicas |
| 9 | Which service reduces database load by caching in memory? | Amazon ElastiCache |
| 10 | Which service transfers petabytes offline when bandwidth is limited? | AWS Snow Family |
| 11 | Which S3 feature makes objects immutable (WORM)? | S3 Object Lock |
| 12 | Which service gives on-premises applications cloud-backed storage? | AWS Storage Gateway |
| 13 | Which AWS database is MySQL and PostgreSQL compatible with up to 15 read replicas? | Amazon Aurora |
Up next on Day 5: Networking, Content Delivery and Serverless Architecture.
Loading article