Summary
Create a DLT pipeline to ingest AWS Savings Plans inventory data to provide commitment tracking alongside billing data.
Background
Savings Plans are AWS's preferred commitment mechanism (replacing Reserved Instances). Understanding active commitments is crucial for cost optimization analysis when combined with actual usage data from CUR.
Scope
Data Sources: Savings Plans inventory (current state)
Granularity: Daily pipeline runs (commitments change infrequently)
Schema: Separate schema from aws_billing (e.g., aws_commitments)
Relationships: Link to CUR data via account IDs and resource identifiers
AWS APIs to Integrate
Primary APIs (boto3.client('savingsplans'))
Implementation Plan
Phase 1: Core Pipeline
Phase 2: Data Enrichment
Success Criteria
Related Work
Dependencies
- Existing AWS pipeline infrastructure
- DLT and DuckDB setup
Target Phase: Phase 5 (Production Features)
Summary
Create a DLT pipeline to ingest AWS Savings Plans inventory data to provide commitment tracking alongside billing data.
Background
Savings Plans are AWS's preferred commitment mechanism (replacing Reserved Instances). Understanding active commitments is crucial for cost optimization analysis when combined with actual usage data from CUR.
Scope
Data Sources: Savings Plans inventory (current state)
Granularity: Daily pipeline runs (commitments change infrequently)
Schema: Separate schema from aws_billing (e.g.,
aws_commitments)Relationships: Link to CUR data via account IDs and resource identifiers
AWS APIs to Integrate
Primary APIs (
boto3.client('savingsplans'))describe_savings_plans()- Active Savings Plansdescribe_savings_plans_offerings()- Available offeringsdescribe_savings_plans_offering_rates()- Pricing ratesImplementation Plan
Phase 1: Core Pipeline
aws_savings_plans_source()DLT sourceaws_commitmentsschema./finops aws import-savings-plansPhase 2: Data Enrichment
Success Criteria
Related Work
Dependencies
Target Phase: Phase 5 (Production Features)