Open data for FinOps
Reporting is the life-blood of any FinOps initiative. And your reports are only as good as your data. It's why data ingestion is such an important part of FinOps (and any big data effort). The following datasets can be used to clean and normalize your data as part of data ingestion, reporting, or other solutions.
Pricing units
Microsoft Cost Management uses the UnitOfMeasure
column to indicate how each charge is measured. It can be in singular or distinct units or can be grouped into chunks based on applicable block pricing rules. As a string, the UnitOfMeasure
column can be challenging to parse and handle all the different permutations and inconsistencies. The Pricing units file provides a list of values you might find within common cost-related datasets, for example, Cost Management exports and price sheets. It also has their related distinct unit and block size or scaling factor to compare pricing to usage units.
Sample data:
UnitOfMeasure | AccountTypes | PricingBlockSize | DistinctUnits |
---|---|---|---|
1 Hour | MCA, EA | 1 | Hours |
10000 GB | EA | 10000 | GB |
150 Hours | EA | 150 | Hours |
200 /Hour | EA | 200 | Units/Hour |
5 GB | MCA, EA | 5 | GB |
5000000 Requests | EA | 5000000 | Requests |
744 Connections | EA | 744 | Connections |
A few important notes about the data:
- Meter names aren't included to keep the file size down.
- The default unit type is
Units
. - Some default units might include a more specific unit in the meter name, which isn't accounted here since meter names aren't included.
- Marketplace meters aren't included due to inconsistencies that would affect data size.
Note
In the Cost Management FOCUS dataset, UnitOfMeasure
is renamed to x_PricingUnitDescription
. Both PricingUnit
and UsageUnit
in FOCUS are set to the DistictUnits
column.
Download PricingUnits.csv See PowerShell
Regions
Microsoft Cost Management provides various values for resource locations that are occasionally inconsistent due to different underlying systems providing the data. The Regions file provides a list of values you might find within common cost-related datasets (for example, Cost Management exports and price sheets) along with their related Azure region IDs and names.
Sample data:
OriginalValue | RegionId | RegionName |
---|---|---|
ap east | eastasia | East Asia |
ca central | canadacentral | Canada Central |
de north | germanynorth | Germany North |
no west | norwaywest | Norway West |
tw north | taiwannorth | Taiwan North |
Download Regions.csv See PowerShell
Note
Convert region values to lowercase before mapping. This helps reduce duplication and speed up the mapping process.
Resource types
Azure resource types are a semi-readable code that represents what kind of resource it is. Currently, there's no mapping of the resource type to a user-friendly string, description, or its icon. The ResourceTypes file provides a list of resource type values you see in the Azure portal along with their display names, description, and a link to the icon, when available.
Sample data:
ResourceType | Singular Display Name | Plural Display Name | Lower Singular Display Name | Lower Plural Display Name |
---|---|---|---|---|
microsoft.compute/virtualmachines | Virtual machine | Virtual machines | virtual machine | virtual machines |
microsoft.insights/workbooks | Azure Workbook | Azure Workbooks | Azure workbook | Azure workbooks |
microsoft.logic/workflows | Logic app | Logic apps | logic app | logic apps |
microsoft.network/virtualnetworks | Virtual network | Virtual networks | virtual network | virtual networks |
microsoft.recoveryservices/vaults | Recovery Services vault | Recovery Services vaults | recovery services vault | recovery services |
microsoft.search/searchservices | Search service | Search services | search service | search services |
microsoft.sql/servers | SQL server | SQL servers | SQL server | SQL servers |
microsoft.sql/servers/databases | SQL database | SQL databases | SQL database | SQL databases |
microsoft.web/sites | App Service web app | App Service web apps | app service | app services |
Note
Convert resource type values to lowercase before mapping. This helps reduce duplication and speed up the mapping process.
Download ResourceTypes.csv Download ResourceTypes.json See PowerShell
Services
In Microsoft Cost Management, ConsumedService
represents the primary service or resource provider of the resource you used. It's roughly the same as ServiceName
in FOCUS. In some cases, multiple services share the same resource provider, so we're using the ConsumedService
and ResourceType
columns to map to ServiceName
and ServiceCategory
values for use within FOCUS.
Sample data:
ConsumedService | ResourceType | ServiceName | ServiceCategory | ServiceSubcategory | PublisherName | PublisherType | Environment | ServiceModel |
---|---|---|---|---|---|---|---|---|
microsoft.compute | microsoft.compute/virtualmachines | Virtual Machines | Compute | Virtual Machines | Microsoft | Cloud Provider | Cloud | IaaS |
microsoft.documentdb | microsoft.documentdb/databaseaccounts | Cosmos DB | Databases | NoSQL Databases | Microsoft | Cloud Provider | Cloud | PaaS |
microsoft.kusto | microsoft.kusto/clusters | Azure Data Explorer | Analytics | Analytics Platforms | Microsoft | Cloud Provider | Cloud | PaaS |
microsoft.network | microsoft.network/virtualnetworks | Virtual Network | Networking | Networking Infrastructure | Microsoft | Cloud Provider | Cloud | IaaS |
microsoft.storage | microsoft.storage/storageaccounts | Storage Accounts | Storage | Storage Platforms | Microsoft | Cloud Provider | Cloud | IaaS |
A few important notes about the data:
ConsumedService
andResourceType
values are all lowercased to avoid case sensitivity issues.ServiceName
values should match the product marketing name for the closest possible service. Some services reuse resource types and can't be distinguished from the resource type alone (for example, Azure functions show as App Service).ServiceCategory
values are aligned with the allowed values in FOCUS.
Note
Most mappings can rely on resource type alone. In a future update, we will merge this list with Resource types to provide only a single dataset. Currently, the only known case where resource type is shared that ConsumedService can help identify is for Microsoft Defender for Cloud. To simplify your mapping, you can only map those 5 rows and rely on a resource type mapping for everything else.
Dataset examples
The following files are examples of what you see when you export data from Microsoft Cost Management. These files are provided to help you understand the data structure and format. They are from an Enterprise Agreement (EA) demo account and aren't intended to be used for ingestion or reporting.
- Cost and usage
- Actual (billed) (
2021-10-01
) - Amortized (
2021-10-01
) - FOCUS (
1.0
) - FOCUS (
1.0-preview(v1)
)
- Actual (billed) (
- Prices (
2023-05-01
) - Reservation details (
2023-03-01
) - Reservation transactions (
2023-05-01
) - Reservation recommendations (
2023-05-01
)
Dataset metadata
Given each dataset uses different columns and data types, FOCUS defines the metadata schema to describe the dataset. Dataset metadata includes general information about the data like the data generator, schema version, and columns included in the dataset.
Sample data:
ColumnName | DataType | Description |
---|---|---|
BilledCost |
Decimal | A charge serving as the basis for invoicing, inclusive of all reduced rates and discounts while excluding the amortization of upfront charges (one-time or recurring). |
BillingAccountId |
String | Unique identifier assigned to a billing account by the provider. |
BillingAccountName |
String | Display name assigned to a billing account. |
BillingCurrency |
String | Currency that a charge was billed in. |
BillingPeriodEnd |
DateTime | End date and time of the billing period. |
BillingPeriodStart |
DateTime | Beginning date and time of the billing period. |
Metadata is available for the following datasets:
- Cost and usage
Looking for more?
We'd love to hear about any datasets you're looking for. Create a new issue with the details that you'd like to see either included in existing or new datasets.
Related content
Related resources:
Related FinOps capabilities:
Related products:
Related solutions: