CI Dashboards Data Joins
This document describes how to perform data joins within Cost Intelligence dashboards. The join data feature enables users to create a new dataset from multiple data sources. The joins can be made with datasets that have at least one column in common. In the example below, Cost Intelligence has joined Spot data set with the Datadog dataset where the join is made on the organization ID.
Dashboard Data Joins
-
In the left main menu, click Cost Intelligence. The Dashboard page opens.
-
To upload a dataset to be joined, click Actions and Manage Files in the drop-down menu.
-
Click Create New Dataset.
-
Choose a CSV file to join. When the CSV file is uploaded, the next screen shows the column names and the column type.
-
Click the ⋮ icon on the dataset name to be joined and select Join to another data source. Select the data source and dataset to be joined.
-
Select the Join Type based on the outcome required and the key. The key in the dropdown should be the common column between the two datasets for the join to work.
-
Click Save.
Load Dataset
The join type indicates how the newly created dataset will appear. These join types are supported:
- Left Join - Uses rows of data from the left table and the matching rows from the right table.
- Full Join - Uses all records in all joined tables.
- Inner Join - Uses only the rows of data that are common in the joined data. Rows that have no commonality between datasets are excluded.
- Right Join - Same as the left join, it uses rows of data from the right table and the matching rows from the left table.
-
Click Load Dataset.
-
Click the Design tab to view the structure of the data and how the joins are made.
-
Once the dataset has finished loading, click Back to Datasets on the newly joined dataset is now available. You can now utilize this dataset to create and enhance new and existing Dashboards.
Common Billing Data Columns to Join
Cost Intelligence and Billing Engine data follows the FinOps Foundation’s FOCUS v1.0 spec where applicable. Below are key examples of data formats and likely columns to join on.
Date Formats: All dates are represented in UTC (Coordinated Universal Time) in ISO 8601 standard format ('YYYY-MM-DDTHH:mm:ssZ').
Column Name | Description | Format |
---|---|---|
BillingPeriodStart | Billing Period Start represents the start date and time of the billing period. This differs from ChargePeriodStart, as it represents the start of the full billing period and is unrelated to the day the usage row is published. | UTC Date Time Format. |
BillingPeriodEnd | Billing Period End represents the start date and time of the billing period. This differs from ChargePeriodEnd, as it represents the end of the full billing period and is unrelated to the day the usage row is published. | UTC Date Time Format. |
ChargePeriodStart | Charge Period Start represents the start date and time of the charge period. This differs from BillingPeriodStart as it should align with the date that the charges are published to the usage row. | UTC Date Time Format. |
ChargePeriodEnd | Charge Period End represents the end date and time of the charge period. This differs from BillingPeriodEnd as it should align with the date that the charges are published to the usage row. | UTC Date Time Format. |
Region | A Region is a provider assigned identifier for an isolated geographic area where a resource is provisioned in, or a service is provided from. Region is commonly used for scenarios like analyzing cost and unit prices based on where resources are deployed. | String Format |
SKU ID | A SKU ID is a unique identifier that defines a provider-supported construct for organizing properties that are common across one or more SKU Prices. A SKU ID can be referenced on a catalog or price list published by a provider to look up detailed information about the SKU. The composition of the properties associated with the SKU ID may differ across providers. Some providers may not support the SKU construct and instead associate all such properties directly with the SKU Price. SKU ID is commonly used for analyzing cost based on SKU related properties above the pricing constructs. | String Format |
Provider Tags | These will surface based on the populated values from the cloud provider. | Key:Value Format |
Resource Type | Resource Type describes the kind of resource the charge applies to. A Resource Type is commonly used for scenarios like identifying cost changes in groups of similar resources and may include values like Virtual Machine, Data Warehouse, and Load Balancer. | String Format |