Learn how SAA-C03 frames database cost through engine choice, service type, caching, retention, and capacity-planning decisions.
Cost-optimized database design on SAA-C03 is about matching the workload to the cheapest database model that still satisfies consistency, scale, access, and retention needs. The exam usually rewards simpler and more workload-specific answers over expensive “one-size-fits-all” database choices.
The current exam guide points to cost-management tools, caching, retention, capacity planning, connections and proxies, database engines, replication, and cost-effective database services and types.
| Requirement | Strongest first fit | Why |
|---|---|---|
| Simple key-value access at large scale | DynamoDB | Can be cheaper and operationally simpler than overbuilt relational fleets |
| Bursty or variable relational demand | Aurora Serverless style path when workload fit exists | Reduces always-on overprovisioning |
| Repeated expensive reads | Cache layer such as ElastiCache | Lowers direct database pressure and sometimes instance cost |
| Long retention with lower active-query need | Smaller hot database plus archive or retention policy strategy | Avoids keeping all data in premium active tiers |
| Pattern | Main cost lever | What AWS is really testing |
|---|---|---|
| DynamoDB | Billing mode and access-pattern fit | Whether a managed key-value service is cheaper than oversized relational capacity |
| Aurora or RDS | Instance sizing, serverless fit, and retention strategy | Whether you are paying for idle or overbuilt relational capacity |
| Cache layer | Offload repeated reads | Whether you can reduce database cost without changing the primary engine |
| Backup and retention | Snapshot frequency and hot-data retention | Whether the design keeps expensive storage longer than needed |
AWS is usually asking one of these:
1Resources:
2 SessionsTable:
3 Type: AWS::DynamoDB::Table
4 Properties:
5 BillingMode: PAY_PER_REQUEST
6 AttributeDefinitions:
7 - AttributeName: session_id
8 AttributeType: S
9 KeySchema:
10 - AttributeName: session_id
11 KeyType: HASH
12 TimeToLiveSpecification:
13 AttributeName: expires_at
14 Enabled: true
What to notice:
| Symptom | Strongest first check | Why |
|---|---|---|
| Relational instances stay expensive despite uneven traffic | Capacity pattern and serverless fit | The workload may not justify always-on capacity |
| Session or ephemeral data keeps growing in the main store | Retention and TTL policy | The architecture may be paying for data that should age out automatically |
| The team is paying for bigger database instances to serve repeated reads | Cache fit | The cost issue may really be read amplification |
| A simple lookup workload runs on a large relational stack | Database type fit | The engine choice itself may be driving needless cost |
Continue with 4.4 Network Architectures to finish the guide with the network-path cost choices that show up repeatedly on SAA-C03.