Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FOCUS #497: SkuPriceDetails column #503

Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
813367e
skupricedetails initial
kk09v Jul 1, 2024
f02f647
skudetails initial
kk09v Jul 1, 2024
c8a0652
Revise skupricedetails
kk09v Jul 9, 2024
ceccde6
Update skupricedetails.md
kk09v Jul 9, 2024
5271f8c
Update skudetails.md
kk09v Jul 9, 2024
70b76fc
Update skupricedetails.md
kk09v Jul 9, 2024
95a66b9
Merge branch 'working_draft' into sku-details_sku-price-details
kk09v Jul 10, 2024
984ccac
Update skupricedetails.md
kk09v Jul 11, 2024
981faf7
Update skudetails.md
kk09v Jul 11, 2024
613e168
Add PascalCase to glossary
kk09v Jul 25, 2024
084bea1
Add PascalCase clause to SkuDetails
kk09v Jul 25, 2024
1ed2e05
Reformatted examples as PascalCase in SkuDetails
kk09v Jul 25, 2024
56a5fd6
Added PascalCase clause to skupricedetails
kk09v Jul 25, 2024
ea7baf2
Merge branch 'working_draft' into sku-details_sku-price-details
kk09v Jul 25, 2024
3b83f6f
Reflecting revised editorial guidelines
kk09v Jul 25, 2024
58bb459
Reflecting revised editorial guidelines
kk09v Jul 25, 2024
29d85f8
Reflecting revised editorial guidelines
kk09v Jul 25, 2024
eb52328
Reflecting revised editorial guidelines
kk09v Jul 25, 2024
fb1f497
Update column_naming_and_ordering - link Pascal Case Glossary
kk09v Aug 1, 2024
2012561
skupricedetails - data may duplicate dedicated columns
kk09v Aug 1, 2024
fb46e96
skudetails - data may duplicate dedicated columns
kk09v Aug 1, 2024
0856e50
SkuPriceDetails - consolidate to 1 column
kk09v Aug 8, 2024
5dcdc9e
SkuDetails - deleting to consolidate to one column
kk09v Aug 8, 2024
208aa39
Update skupricedetails.md
kk09v Aug 15, 2024
2f30e82
Added conditional requirement
kk09v Aug 15, 2024
f4779d7
Terminology skupricedetails.md
kk09v Aug 19, 2024
c4b4b9d
Added skupricedetails.md to columns.mpdd
kk09v Aug 24, 2024
9cfc8fc
reordered normative clauses
kk09v Aug 24, 2024
1e454ea
SHOULD to MUST not include inapplicable properties
kk09v Aug 24, 2024
99e118e
Rephrase
kk09v Aug 24, 2024
0fb07ee
Merge branch 'working_draft' into sku-details_sku-price-details
jpradocueva Aug 26, 2024
6a3616a
Update specification/columns/skupricedetails.md
kk09v Aug 29, 2024
1741cfd
Incorporating most recent round of feedback
kk09v Aug 29, 2024
8bcd752
Formatting
kk09v Aug 29, 2024
a0cf322
Final adjustments
kk09v Sep 2, 2024
591b8f8
Formatting
kk09v Sep 4, 2024
c42290e
Adding explicit nullability provisions
kk09v Sep 4, 2024
e422475
Merge branch 'working_draft' into sku-details_sku-price-details
jpradocueva Sep 5, 2024
956680b
Merge branch 'working_draft' into sku-details_sku-price-details
jpradocueva Sep 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions specification/columns/skudetails.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# SKU Details

The **SKU Details** column represents a list of relevant properties shared by all resources having the same [**SKU ID**](#skuid) which are not captured in another FOCUS column. These properties enable a practitioner to more easily calculate metrics such as total units of a service when it is not directly billed in those units (e.g. cores) and thus enables FinOps capabilities such as unit economics.
kk09v marked this conversation as resolved.
Show resolved Hide resolved


The _SkuDetails_ column adheres to the following requirements:
flanakin marked this conversation as resolved.
Show resolved Hide resolved

* The properties (both key and value) contained in the _SkuDetails_ column **MUST** be shared across all resources having the same _SkuId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The _SkuDetails_ column **MUST** be in [_KeyValueFormat_](#key-valueformat).
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The _SkuDetails_ column **SHOULD NOT** contain properties which are not applicable to the corresponding _SkuId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* Where _SkuDetails_ contains a property with a value which is a numerical, the value provided **MUST** represent the value for a [_ConsumedQuantity_](#consumedquantity) of 1.
* The key for a property **SHOULD** remain consistent across comparable SKUs having that property and the values for this key **SHOULD** remain in a consistent format.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The key for a property **SHOULD** be formatted in PascalCase.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* Properties included in _SkuDetails_ **SHOULD** be immutable once included for a _SkuId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved

## Examples

```json
{
"Cores": 4,
"EphemeralDiskGB": 100,
"NestedVirtualization": true,
}
kk09v marked this conversation as resolved.
Show resolved Hide resolved
```

## Column ID

SkuDetails

## Display Name

SKU Details

## Description

A set of properties of a **SKU ID** which are meaningful but not common across all **SKU ID**s.

## Content Constraints

| Constraint | Value |
|:----------------|:-----------------|
| Column type | Dimension |
| Feature level | Conditional |
| Allows nulls | True |
| Data type | JSON |
| Value format | [Key-Value Format](#key-valueformat) |

## Introduced (version)

1.1
51 changes: 51 additions & 0 deletions specification/columns/skupricedetails.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# SKU Price Details
kk09v marked this conversation as resolved.
Show resolved Hide resolved

The **SKU Price Details** column represents a list of relevant properties shared by all resources having the same [**SKU Price ID**](#skupriceid) which are not captured in another FOCUS column. These properties enable a practitioner to more easily understand the differences that make up the multiple **SKU Price IDs** under a given [**SKU ID**](#skuid).


The _SkuPriceDetails_ column adheres to the following requirements:

* The properties (both key and value) contained in the _SkuPriceDetails_ column **MUST** be shared across all resources having the same _SkuPriceId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The _SkuPriceDetails_ column **MUST** be in [_KeyValueFormat_](#key-valueformat).
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The _SkuPriceDetails_ column **SHOULD NOT** contain properties which are not applicable to the corresponding _SkuPriceId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The _SkuPriceDetails_ column **SHOULD NOT** contain properties which are already captured in the [_SkuDetails_](#skudetails) column.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* Where _SkuPriceDetails_ contains a property with a value which is a numerical, the value provided **MUST** represent the value for a [_ConsumedQuantity_](#consumedquantity) of 1.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The key for a property **SHOULD** remain consistent across comparable SKUs having that property and the values for this key **SHOULD** remain in a consistent format.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* The key for a property **SHOULD** be formatted in PascalCase.
kk09v marked this conversation as resolved.
Show resolved Hide resolved
* Properties included in _SkuPriceDetails_ **SHOULD** be immutable once included for a _SkuPriceId_.
kk09v marked this conversation as resolved.
Show resolved Hide resolved

## Examples

```json
{
"OperationClass": "A",
"PricingTier": 2,
"PreimumProcessing": true,
}
```

## Column ID

SkuPriceDetails

## Display Name

SKU Price Details

## Description

A set of properties of a **SKU Price ID** which allow differentiation between different **SKU Price ID**s within the same **SKU ID**.

## Content Constraints

| Constraint | Value |
|:----------------|:-----------------|
| Column type | Dimension |
| Feature level | Conditional |
kk09v marked this conversation as resolved.
Show resolved Hide resolved
| Allows nulls | True |
| Data type | JSON |
| Value format | [Key-Value Format](#key-valueformat) |

## Introduced (version)

1.1
4 changes: 4 additions & 0 deletions specification/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,10 @@ A company or organization that provides outsourced management and support of a r

A term that describes a service that is available and provided immediately or as needed, without requiring a pre-scheduled appointment or prior arrangement. In cloud computing, virtual machines can be created and terminated as needed, i.e. on demand.

<a name="glossary:pascalcase"><b>Pascal Case</b></a>

Pascal Case (PascalCase, also known as UpperCamelCase) is a format for identifiers which contain one or more words meaning the words are concatenated together with no delimiter and the first letter of each word is capitalized.

<a name="glossary:practitioner"><b>Practitioner</b></a>

An individual who performs FinOps within an organization to maximize the business value of using cloud and cloud-like services.
Expand Down