Hermes Wiki
CertExams/SAA-C03/Domain4/D4_CostOptimizedStorageSolution

Design Cost-Optimized Storage Solutions

Core Idea

Two-step skill: (1) know which storage service actually fits the access pattern (don't pick S3 for a file-system requirement just because it's the "default" cheap answer), then (2) size and configure that service to avoid over-provisioning.

Compute-Attached Storage Cost Tiers

  • Ephemeral (instance store): the lowest-cost compute-related storage — it's bundled into the EC2 instance's hourly rate, no separate charge. Not for persistent data (local, lost on stop/terminate).
  • EBS: additional cost beyond the instance rate, but persistent and portable between instances, with snapshot-based backup/migration.
  • Right-sizing EBS = matching volume type, size, and IOPS to actual need — e.g., switch from Provisioned IOPS to gp2/gp3 if the workload is actually fine with bursting IOPS rather than sustained guaranteed IOPS.
  • Trusted Advisor surfaces unattached EBS volumes — a classic "silently paying for nothing" cost leak; with a proper archive strategy, delete them.
  • Compare provisioned IOPS vs. actually-used IOPS periodically — paying for a high-performance volume type you're not using is a direct, correctable cost leak.
  • Amazon Data Lifecycle Manager and AWS Backup: automate deletion of old EBS snapshots/backups across services to control storage cost creep.

S3 Cost Structure

  • 11 nines of durability, no storage ceiling, and S3 Lifecycle policies to delete/archive (to Glacier) data no longer needed at full price.
  • Storage classes trade off durability/availability/pricing/retrieval time — you don't need exact pricing memorized, but you must know the retrieval-time vs. storage-cost trade-off per tier well enough to match a scenario's access pattern to the right class.
  • S3 Lifecycle Configuration vs. S3 Intelligent-Tiering:
    • Lifecycle Configuration: rule-based, time-driven transitions across a bucket (e.g., "move everything after 30 days").
    • Intelligent-Tiering: automatically moves individual objects to the most cost-effective tier as access patterns change, no rules to write.
  • Requester Pays: can be configured so the requester, not the bucket owner, pays for storage/transfer/usage — relevant when you're a data provider, not a consumer.

Cost Visibility & Management Tooling

  • CloudWatch: track utilization (CPU/RAM/storage) to flag instances/volumes for downsizing or upsizing.
  • Cost Explorer: high-level interactive view with drill-down.
  • Cost and Usage Report (CUR): granular breakdown by hour/day/month/product/resource-tag — the answer when a question wants maximum billing granularity, not a dashboard.
  • AWS Budgets: billing alarms, free-tier alarms, and automated-action alarms on defined thresholds.
  • AWS Organizations + Control Tower: centralized billing/access/compliance/security/resource-sharing across accounts — consolidated billing benefits specifically.
  • Cost allocation tags: filter Cost Explorer views and attribute spend — a tagging strategy is a prerequisite for most cost-visibility work, not optional polish.

Hybrid Data Migration Cost Choice

  • Scenario: 250 TB of archived on-prem data needs to move to S3 — fastest/most cost-effective option is generally Snowball (multiple devices), beating a Direct Connect setup or uploading over an existing dedicated line for this volume/security profile. Know Snow Family as the answer whenever the scenario emphasizes large volume + security + speed over building new network infrastructure.

Exam Angle

Expect "unattached EBS volume costing money for nothing" (Trusted Advisor), "unknown access pattern, minimize S3 storage cost automatically" (Intelligent-Tiering) vs. "known, time-based access pattern" (Lifecycle Configuration), and "large volume of archived data, fastest/cheapest move to S3" (Snowball/Snow Family) pattern questions.

Practical Examples

Ephemeral vs. EBS, cost-conscious choice: A batch job downloads a large dataset, processes it, writes results to S3, and terminates — none of the intermediate working data needs to survive the instance. Using instance store (ephemeral) for that scratch space costs nothing extra beyond the instance's own hourly rate, versus provisioning a separate EBS volume that would add cost for data nobody needs to keep.

Provisioned IOPS vs. gp3, right-sized: A team provisioned io2 volumes at 10,000 IOPS for a database "to be safe," but CloudWatch shows actual sustained usage never exceeds 2,500 IOPS with occasional bursts to 4,000. Switching to gp3 (baseline 3,000 IOPS included, burstable, and IOPS/throughput can be provisioned independently of size at a much lower cost than io2) meets the real workload's needs for a fraction of the price.

Trusted Advisor catching silent waste: A team decommissioned an EC2 fleet six months ago but never cleaned up the attached EBS volumes — they detached automatically on termination but were never deleted, and have been billing quietly ever since. Running Trusted Advisor's cost-optimization checks surfaces these unattached volumes directly; after confirming no one needs the data (or snapshotting first as an archive), they get deleted.

Lifecycle Configuration for a known pattern: Application logs are written daily, queried constantly for the first 30 days (active debugging window), rarely touched between day 30–90 (occasional audits), and only needed for 7-year compliance retention after that. A Lifecycle policy: Standard for 30 days → Standard-IA for 60 more days → Glacier Deep Archive for the remaining ~6.9 years — fully automated, matched exactly to the known access timeline.

Intelligent-Tiering for an unknown pattern: A content platform hosts user-uploaded files where popularity is unpredictable — some go viral immediately, most are never viewed again after upload, and a few get rediscovered months later. Writing a Lifecycle rule here would guess wrong constantly. S3 Intelligent-Tiering monitors each object's actual access pattern and moves it between frequent/infrequent (and optionally archive) tiers automatically, at the cost of a small per-object monitoring fee.

Requester Pays for a public dataset: A research institute hosts a large public genomics dataset in S3 and wants to make it freely available, but doesn't want to personally absorb the data-transfer-out cost for a viral dataset that could get downloaded by thousands of unaffiliated researchers. Configuring the bucket as Requester Pays shifts the download/transfer cost to whoever pulls the data, while storage cost stays with the owner.

Snowball for a real migration: A company shutting down a data center needs to move 500 TB of archival backups to S3 within 2 weeks, and their available internet uplink would take months at that volume. Ordering multiple AWS Snowball Edge devices, loading them in parallel on-site, and shipping them back to AWS gets the data into S3 within the deadline — a case where the "physical shipping" option is genuinely the fastest and cheapest path.

Hermes Wiki