Migrating from FOCUS 1.0 to FOCUS 1.2
AWS Data Exports allows you to create exports of FOCUS 1.2 with AWS columns, which provides the same standardized cost and usage information as FOCUS 1.0 along with several enhancements for invoice reconciliation, capacity reservation tracking, and SaaS integration. However, FOCUS 1.2 introduces breaking changes that affect existing row counts and column values. Review these changes carefully before migrating.
FOCUS 1.2 provides the following improvements over FOCUS 1.0:
Invoice reconciliation: FOCUS 1.2 includes an InvoiceID column that enables streamlined financial close processes and invoice reconciliation.
Capacity reservation tracking: FOCUS 1.2 contains CapacityReservationId and CapacityReservationStatus columns that help you identify and track unused capacity reservations.
Virtual currency support: FOCUS 1.2 includes new pricing currency columns (PricingCurrency, PricingCurrencyEffectiveCost, PricingCurrencyListUnitPrice, and PricingCurrencyContractedUnitPrice) that enable you to join with SaaS providers cost and usage data in FOCUS 1.2 format.
The following table outlines the differences between FOCUS 1.2 and FOCUS 1.0 in more detail:
| Feature | FOCUS 1.2 | FOCUS 1.0 |
|---|---|---|
| Data schema | FOCUS 1.2 specification with 57 FOCUS columns + 3 AWS columns (60 total). For the complete column list, see FOCUS 1.2 with AWS columns. | FOCUS 1.0 specification with 43 FOCUS columns + 5 AWS columns (48 total). For the complete column list, see FOCUS 1.0 with AWS columns. |
| New columns | InvoiceIssuerId, CapacityReservationId, CapacityReservationStatus, CommitmentDiscountQuantity, CommitmentDiscountUnit, ServiceSubcategory, SkuMeter, SkuPriceDetails, PricingCurrency, PricingCurrencyEffectiveCost, PricingCurrencyListUnitPrice, PricingCurrencyContractedUnitPrice, BillingAccountType, SubAccountType | |
| Removed columns | x_UsageType (This is now the SkuMeter column) x_CostCategories (This is now included in the Tags column with the "aws:tags:CostCategory/" prefix) | |
| Row count | On Demand Capacity Reservation (ODCR) and EC2 Capacity Blocks for ML line items are now split into separate "Used" and "Unused" status. This increases the row count. | Does not provide capacity reservation status breakdown details. |
| PricingCategory column values | Commitment discount purchases, such as Reserved Instance and Savings Plan upfront fees, are now categorized as "Standard." | Commitment discount purchases categorized as "Committed". |
| ConsumedQuantity column nullability | Null when the CommitmentDiscountStatus is "Unused". | Value is "0" when the CommitmentDiscountStatus is "Unused". |
| ConsumedUnit column nullability | Tied to ConsumedQuantity nullability (required to be null when ConsumedQuantity is null). | Independent nullability rules. |
| Tag column requirement | Include user-defined and provider-defined resource tags, and user-defined cost category tags. | Include only user-defined and provider-defined resource tags. |
| File delivery destination | S3 bucket | S3 bucket |
| File output formats | GZIP, Parquet | GZIP, Parquet |
| SQL table name | FOCUS_1_2_AWS | FOCUS_1_0_AWS |
| Manifest FocusVersion | "1.2" | "1.0" |
| Table configurations | Allows TIME_GRANULARITY to be set to HOURLY, DAILY, or MONTHLY | Only exports in HOURLY. |
For more detailed information about the schema of FOCUS 1.2, see FOCUS 1.2 with AWS columns.