-
Notifications
You must be signed in to change notification settings - Fork 1.4k
feat[Do not merge][unlimited cardinality]: Added the procedure to adjust account cardinality #21337
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
Changes from 4 commits
58704bb
95f5fbb
31382e3
b21c625
a80e561
145385d
ff8d04f
d36f4d1
c7f97ab
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||
---|---|---|---|---|---|---|
@@ -1,154 +1,203 @@ | ||||||
--- | ||||||
title: 'Cardinality management' | ||||||
title: 'Manage cardinality' | ||||||
metaDescription: 'You can manage your data cardinality from the New Relic UI.' | ||||||
freshnessValidatedDate: 2024-09-24 | ||||||
--- | ||||||
|
||||||
<Callout title="preview"> | ||||||
We're still working on this feature, but we'd love for you to try it out! | ||||||
|
||||||
This feature is currently provided as part of a preview program pursuant to our [pre-release policies](/docs/licenses/license-information/referenced-policies/new-relic-pre-release-policy). | ||||||
New relic provides a budget of 15 million cardinality per account per day. Under each account you can have multiple metrics, each with a cardinality budget of 100,000. If cardinality usage of a metrics approaches the limit, you can adjust the budget for metrics, or prune attributes to reduce cardinality. | ||||||
|
||||||
<Callout variant="important"> | ||||||
You can also [increase the cardinality budget of your account](#additional-account-cardinality-budget-adjustment) upto 200 million depending on your data needs. This option is only available with the [Advanced compute add-on](/docs/accounts/accounts-billing/new-relic-one-pricing-billing/add-on-billing) as a part of the Compute pricing model. Advanced [CCUs](/docs/licenses/license-information/product-definitions/new-relic-one-pricing-definitions/#compute-capacity-unit) are consumed for the additional cardinality used beyond the default budget. | ||||||
</Callout> | ||||||
|
||||||
Cardinality refers to the number of unique elements in a set, specifically the unique attribute combinations observed for a given metric within a one-day period. This data resets daily at UTC midnight. As cardinality increases with more unique combinations, it can impact data limits. Understanding and managing cardinality is crucial to optimize data usage and preventing limit issues. | ||||||
To manage cardinality or create pruning rules, you need specific permissions. Reach out to your Authentication Domain Manager with your requirements. | ||||||
|
||||||
<CollapserGroup> | ||||||
<Collapser id="access-management" title="Access management (By Authentication Domain Manager)"> | ||||||
|
||||||
As an Authentication Domain Manager, perform the following steps to grant access to a user for managing account and metrics cardinality. Check with the user about their specific needs and accordingly do the configuration. To learn more about user management, refer to [User management tutorial](/docs/accounts/accounts-billing/new-relic-one-user-management/account-user-mgmt-tutorial/). | ||||||
|
||||||
<Steps> | ||||||
|
||||||
<Step> | ||||||
### Add permissions to a custom role [#permissions-to-custom-role] | ||||||
[Create a new custom role](/docs/accounts/accounts-billing/new-relic-one-user-management/account-user-mgmt-tutorial/#roles) with the following permissions, or add them to an existing role. Check with the user to understand the level of access required. | ||||||
* `Manage account cardinality`: Adjust the cardinality budget of the account. | ||||||
* `View`: Can see the cardinality budget of the account. | ||||||
* `Modify`: Can update the cardinality budget of the account. | ||||||
* `Manage metric cardinality`: Adjust the cardinality budget of metrics. | ||||||
* `View`: Can see the cardinality budget of the metrics. | ||||||
* `Modify`: Can update the cardinality budget of the metrics. | ||||||
* `Manage pruning rules`: Manage pruning rules for metrics. | ||||||
* `View`: Can see the pruning rules of the metrics. | ||||||
* `Modify`: Can create and delete pruning rules for the metrics. | ||||||
</Step> | ||||||
|
||||||
<Step> | ||||||
### Add user, role, and account to a group [#group-access] | ||||||
For the cardinality management, [create a new group](/docs/accounts/accounts-billing/new-relic-one-user-management/account-user-mgmt-tutorial/#group-access) or manage an existing group as follows: | ||||||
1. Navigate to **[New Relic Administration](https://one.newrelic.com/admin-portal) > Access Management > Groups**. | ||||||
2. Click <DNT>**Create a new group**</DNT>, or select <DNT>**Manage group access**</DNT> from the <Icon name="fe-more-horizontal"/> menu of an existing group. | ||||||
3. For a new group, provide a name and click <DNT>**Create group**</DNT>. The <DNT>**Admin**</DNT> pane for the group opens. | ||||||
4. Under <DNT>**Members**</DNT>, add the user. | ||||||
5. Under <DNT>**Account access**</DNT>, associate the custom role with the desired account for cardinality management. | ||||||
6. If cardinality management involves multiple accounts, under <DNT>**Account access**</DNT>, include the custom role for each relevant account within the group. | ||||||
</Step> | ||||||
|
||||||
</Steps> | ||||||
</Collapser> | ||||||
</CollapserGroup> | ||||||
|
||||||
As a New Relic administrator, you oversee data ingestion to ensure it stays within the specified limit. <DNT>**Cardinality Management**</DNT> offers graphs and tables to detail your data usage, allowing you to take action if you're approaching your limits. | ||||||
|
||||||
To view the **<DNT>Cardinality Management</DNT>** UI, go to **<DNT>[one.newrelic.com](https://one.newrelic.com)</DNT> > (click your user name) > <DNT>Administration > Cardinality Management</DNT>**. | ||||||
## Account pruning rules [#account-pruning-rules] | ||||||
|
||||||
## Account cardinality breakdown [#account-breakdown] | ||||||
A common method to maintain account cardinality within its budget is to implement pruning rules for non-critical attributes, which removes unnecessary data. | ||||||
|
||||||
If your organization has multiple accounts, you can view a breakdown of cardinality for each account. To switch accounts, use the account picker in the top right corner. If you have access to the account, you can see the account cardinality information on the UI. | ||||||
### View account pruning rules [#view-pruning-rules] | ||||||
|
||||||
### Usage over time [#usage-over-time] | ||||||
<Steps> | ||||||
|
||||||
On the landing page of <DNT>**Cardinality Managemen**t</DNT>, you can view the <DNT>**Usage over time**</DNT> chart. The chart displays the account cardinality usage compared the limit of that account. | ||||||
<Step> | ||||||
### Prerequisite [#prerequisites] | ||||||
To view account pruning rules, you must have the `Manage pruning rules: view` permission. Reach out to your Authentication Domain Manager to [add this permission](#access-management) to your custom role. | ||||||
</Step> | ||||||
|
||||||
<img | ||||||
style={{ align: 'left',maxWidth: '90%' }} | ||||||
title="Screenshot showing the usage over time chart" | ||||||
alt="Screenshot showing the usage over time chart" | ||||||
src="/images/apis-and-data_screenshot-crop_usage-over-time.webp" | ||||||
/> | ||||||
<Step> | ||||||
To view account pruning rules: | ||||||
1. Navigate to to **<DNT>[one.newrelic.com](https://one.newrelic.com)</DNT> > (click your user name) > <DNT>Administration > Cardinality Management</DNT>**. | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||
2. From the **Metrics** table, click <DNT>**View Pruning Rules**</DNT>. A scrollable list of all pruning rules associated with the account appears. | ||||||
|
||||||
<Callout variant="tip"> | ||||||
If the cardinality usage value remains unchanged, then a new data point isn't reported. So, you may see an empty data point. This isn't data loss. | ||||||
</Callout> | ||||||
<Callout variant="tip"> | ||||||
If no pruning rules exist in the account, the <DNT>**View Pruning Rules**</DNT> button doesn't appear. | ||||||
</Callout> | ||||||
</Step> | ||||||
|
||||||
To adjust the timeseries, use the time picker in the top right corner. This change only affects the timeseries in the chart and does't impact the Metrics table following it. | ||||||
### Metrics table [#metrics-table] | ||||||
Check the top 20 metrics with the highest cardinality in the selected account for the day. View the breakdown of account cardinality in the <DNT>**Metrics**</DNT> table, organized by metric name. | ||||||
</Steps> | ||||||
|
||||||
### Create a pruning rule [#create-pruning-rule] | ||||||
|
||||||
<img | ||||||
style={{ align: 'left',maxWidth: '90%' }} | ||||||
title="Screenshot showing the metrics table" | ||||||
alt="Screenshot showing the metrics table" | ||||||
src="/images/apis-and-data_screenshot-crop_metrics-table.webp" | ||||||
/> | ||||||
<Steps> | ||||||
|
||||||
All metrics have a default cardinality limit of 100,000. Based on your requirement, you can [adjust the per-metric limits](#per-metric-limit-adjustment). | ||||||
<Step> | ||||||
### Prerequisite [#prerequisites] | ||||||
To create account pruning rules, you must have the `Manage pruning rules: modify` permission. Reach out to your Authentication Domain Manager to [add this permission](#access-management) to your custom role. | ||||||
</Step> | ||||||
|
||||||
## Metric cardinality breakdown [#metric-cardinality-breakdown] | ||||||
<Step> | ||||||
To create account pruning rules: | ||||||
1. Navigate to to **<DNT>[one.newrelic.com](https://one.newrelic.com)</DNT> > (click your user name) > <DNT>Administration > Cardinality Management</DNT>**. | ||||||
2. From the **Metrics** table, select the metric in which you want to create a pruning rule. The **Cardinality Management** page of the metric opens. | ||||||
3. Go to the **Attributes** table and select the attributes you want to prune. | ||||||
<img | ||||||
style={{ align: 'left', maxWidth: '90%' }} | ||||||
title="Screenshot showing how to select attributes for pruning rule" | ||||||
alt="Screenshot showing how to select attributes for pruning rule" | ||||||
src="/images/apis-and-data_screenshot-crop_select-attributes-for-pruning-rule.webp"/> | ||||||
|
||||||
Select any metric in the <DNT>**Metrics**</DNT> table to view its detailed cardinality information in a dedicated <DNT>**Cardinality Management**</DNT> page. | ||||||
3. Click <DNT>**Create pruning rule**</DNT>. A pop-up appears, providing details on how the pruning rule impacts the metric's cardinality. | ||||||
|
||||||
<img | ||||||
style={{ align: 'left' }} | ||||||
title="Screenshot of page to name the pruning rule" | ||||||
alt="Screenshot of page to name the pruning rule" | ||||||
src="/images/apis-and-data_screenshot-crop_name-pruning-rule.webp"/> | ||||||
|
||||||
<img | ||||||
style={{ align: 'left',maxWidth: '90%' }} | ||||||
title="Screenshot showing the Cardinality Management page" | ||||||
alt="Screenshot showing the Cardinality Management page" | ||||||
src="/images/apis-and-data_screenshot-crop_metric-cardinality-breakdown.webp" | ||||||
/> | ||||||
4. Enter a rule name or description. | ||||||
|
||||||
4. Click <DNT>**Submit**</DNT>. | ||||||
|
||||||
### Bar charts | ||||||
In the metric-specific view, you can check current cardinality usage with two bar charts: | ||||||
* <DNT>**Metric cardinality budget**</DNT> (limit): Cardinality usage specific to the metric | ||||||
* <DNT>**Account cardinality budget**</DNT> (limit): Overall cardinality usage for the account | ||||||
<Callout variant="important"> | ||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should this be a caution rather than important? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Changed it to caution |
||||||
Pruning rules take effect immediately. Ensure you want to prune the data before creating a rule. You can delete a pruning rule after creating it, but the rule may prune some data before you remove it. | ||||||
</Callout> | ||||||
</Step> | ||||||
|
||||||
### Usage over time (for metrics) [#usage-over-time-metrics] | ||||||
</Steps> | ||||||
|
||||||
The <DNT>**Usage over time**</DNT> chart displays the metric cardinality usage compared the limit of that metric. You can adjust the time picker to view different time periods of this individual metric's cardinality data. | ||||||
|
||||||
<Callout variant="tip"> | ||||||
If a metric exceeds its cardinality limit, New Relic still populates information for the metric, but it may be slightly slower as it uses raw data instead of aggregated data. | ||||||
</Callout> | ||||||
### Delete a pruning rule [#delete-pruning-rule] | ||||||
|
||||||
### Attributes table [#attributes-table] | ||||||
<Steps> | ||||||
|
||||||
The <DNT>**Attributes**</DNT> table has the list of top 20 attributes that majorly contribute to the metric's cardinality. To view the values of a specific attribute, click the options menu on the right side of the attribute row and select <DNT>**View attribute values**</DNT>. | ||||||
<Step> | ||||||
### Prerequisite [#prerequisites] | ||||||
To delete account pruning rules, you must have the `Manage pruning rules: modify` permission. Reach out to your Authentication Domain Manager to [add this permission](#access-management) to your custom role. | ||||||
</Step> | ||||||
|
||||||
<Callout variant="important"> | ||||||
To use features like **Manage Account Cardinality**, **Manage Metric Cardinality**, and **Create Pruning Rules** within the UI, ensure your role provides the necessary access under the Cardinality Management section in the [Access Management UI's](https://onenr.io/0bRmaX5JgRy) Roles tab. These capabilities can be added through a [custom role](https://docs.newrelic.com/docs/accounts/accounts-billing/new-relic-one-user-management/account-user-mgmt-tutorial/#roles) or the **All Product Admin role**, with full access automatically granted to **Full Users with the All Product Admin role**. | ||||||
</Callout> | ||||||
<Step> | ||||||
To delete account pruning rules: | ||||||
1. Navigate to to **<DNT>[one.newrelic.com](https://one.newrelic.com)</DNT> > (click your user name) > <DNT>Administration > Cardinality Management</DNT>**. | ||||||
2. From the **Metrics** table, select <DNT>**View Pruning Rules**</DNT>. | ||||||
3. Scroll to the relevant pruning rule and delete it. | ||||||
</Step> | ||||||
|
||||||
## Account pruning rules [#account-pruning-rules] | ||||||
</Steps> | ||||||
|
||||||
A common method to maintain account cardinality within its limit is to implement pruning rules for non-critical attributes, which removes unnecessary data. | ||||||
## Per-metric budget adjustment [#per-metric-limit-adjustment] | ||||||
|
||||||
### View account pruning rules [#view-pruning-rules] | ||||||
When all attributes of a specific metric are crucial and you approach your cardinality budget, you can adjust the per-metric budget to meet your needs. Typically, metrics have a default maximum cardinality of 100,000, but you can increase this up to 1 million per metric. | ||||||
|
||||||
To view account pruning rules: | ||||||
1. Go to the **Cardinality Management** page of the account. | ||||||
2. From the **Metrics** table, click <DNT>**View Pruning Rules**</DNT>. A scrollable list of all pruning rules associated with the account appears. | ||||||
<Callout variant="tip"> | ||||||
If no pruning rules exist in the account, the <DNT>**View Pruning Rules**</DNT> button doesn't appear. | ||||||
<Callout variant="tip"> | ||||||
Your account's overall cardinality budget remains unchanged. Therefore, setting all metric budgets to 1 million without careful consideration could quickly exhaust your account's cardinality capacity. | ||||||
</Callout> | ||||||
|
||||||
### Create a pruning rule [#create-pruning-rule] | ||||||
|
||||||
To create a pruning rule: | ||||||
|
||||||
1. Go to the **Cardinality Management** page of the account. | ||||||
2. From the **Metrics** table, select the metric in which you want to create a pruning rule. The **Cardinality Management** page of the metric opens. | ||||||
3. Go to the **Attributes** table and select the attributes you want to prune. | ||||||
<img | ||||||
style={{ align: 'left', maxWidth: '90%' }} | ||||||
title="Screenshot showing how to select attributes for pruning rule" | ||||||
alt="Screenshot showing how to select attributes for pruning rule" | ||||||
src="/images/apis-and-data_screenshot-crop_select-attributes-for-pruning-rule.webp"/> | ||||||
|
||||||
3. Click <DNT>**Create pruning rule**</DNT>. A pop-up appears, providing details on how the pruning rule impacts the metric's cardinality. | ||||||
|
||||||
<img | ||||||
style={{ align: 'left' }} | ||||||
title="Screenshot of page to name the pruning rule" | ||||||
alt="Screenshot of page to name the pruning rule" | ||||||
src="/images/apis-and-data_screenshot-crop_name-pruning-rule.webp"/> | ||||||
|
||||||
3. Enter a rule name or description. | ||||||
|
||||||
4. To create the pruning rule, click <DNT>**Submit**</DNT>. | ||||||
### Edit per-metric budget [#edit-per-metric-limit] | ||||||
|
||||||
<Callout variant="important"> | ||||||
Pruning rules take effect immediately. Ensure you want to prune the data before creating a rule. You can delete a pruning rule after creating it, but the rule may prune some data before you remove it. | ||||||
</Callout> | ||||||
<Steps> | ||||||
|
||||||
### Delete a pruning rule [#delete-pruning-rule] | ||||||
<Step> | ||||||
### Prerequisite [#prerequisites] | ||||||
To adjust per-metric budgets, you must have the `Manage metric cardinality: modify` permission. Reach out to your Authentication Domain Manager to [add this permission](#access-management) to your custom role. | ||||||
</Step> | ||||||
|
||||||
To delete a pruning rule: | ||||||
<Step> | ||||||
To adjust the per-metric budget: | ||||||
1. Navigate to to **<DNT>[one.newrelic.com](https://one.newrelic.com)</DNT> > (click your user name) > <DNT>Administration > Cardinality Management</DNT>**. | ||||||
2. Select the metric for which you want to adjust the budget. The **Cardinality Management** page of the metric opens. | ||||||
3. Click <DNT>**Adjust metric budget**</DNT>. | ||||||
4. Update the budget to meet your needs. Make sure, it is less than or equal to 1 million. | ||||||
</Step> | ||||||
|
||||||
1. Go to the **Cardinality Management** page of the account. | ||||||
2. From the **Metrics** table, select <DNT>**View Pruning Rules**</DNT>. | ||||||
3. Scroll to the relevant pruning rule and delete it. | ||||||
</Steps> | ||||||
|
||||||
## Per-metric limit adjustment [#per-metric-limit-adjustment] | ||||||
|
||||||
When all attributes of a specific metric are crucial and you approach your cardinality limit, you can adjust the per-metric limit to meet your needs. Typically, metrics have a default maximum cardinality of 100,000, but you can increase this up to 1 million per metric. | ||||||
## Additional account cardinality budget adjustment [#additional-account-cardinality-budget-adjustment] | ||||||
While the default cardinality budget of 15 million is sufficient for most users, you may require a higher budget to accommodate your data needs. While you set an upper limit, you are only charged for the aggregates you generate above the 15 million default cardinality budget, up to the new limit you've set. Currently you can increase the cardinality budget of your account up to 200 million. If you need a higher budget, [create a support ticket](https://one.newrelic.com/help-xp). | ||||||
|
||||||
<Callout variant="tip"> | ||||||
Your account's overall cardinality limit remains unchanged. Therefore, setting all metric limits to 1 million without careful consideration could quickly exhaust your account's cardinality capacity. | ||||||
</Callout> | ||||||
<Steps> | ||||||
|
||||||
### Edit per-metric limit [#edit-per-metric-limit] | ||||||
<Step> | ||||||
### Prerequisites [#prerequisites] | ||||||
To adjust the cardinality budget of your account, you must have: | ||||||
* Subscribed to the [Advanced compute add-on](/docs/accounts/accounts-billing/new-relic-one-pricing-billing/add-on-billing). | ||||||
* The `Manage account cardinality: modify` permission. Reach out to your Authentication Domain Manager to [add this permission](#access-management) to your custom role. | ||||||
</Step> | ||||||
|
||||||
1. Go to the specific metric's <DNT>**Cardinality Management**</DNT> page. | ||||||
2. Select <DNT>**Adjust metric budget**</DNT>. | ||||||
3. Update the limit value to meet your needs. Make sure, it is less than or equal to 1 million. | ||||||
<Step> | ||||||
### Adjust account cardinality budget [#adjust-account-cardinality-budget] | ||||||
Perform the following steps to adjust the cardinality budget of your account. The adjustment may take 15 to 20 minutes to take effect. | ||||||
1. From the <DNT>**Cardinality Management**</DNT> page, click <DNT>**Manage account cardinality**</DNT>. | ||||||
2. From the <DNT>**Manage account cardinality limit**</DNT> pop-up: | ||||||
1. Adjust the slider to set the new cardinality budget for your account. The maximum limit is 200 million. | ||||||
2. Tick the checkbox to agree to and consent to the associated cost of the additional cardinality ingestion. | ||||||
3. Click <DNT>**Adjust cardinality budget**</DNT> to apply the changes. | ||||||
|
||||||
The updated limit appears in the <DNT>**Cardinality Management**</DNT> page within a few minutes. | ||||||
<img | ||||||
title="Manage account cardinality limit" | ||||||
alt="Manage account cardinality limit" | ||||||
src="/images/adjust-account-cardinality.webp" | ||||||
/> | ||||||
|
||||||
<Callout variant="tip"> | ||||||
From the <DNT>**Manage account cardinality limit**</DNT> pop-up, you can view the change history to track when and by which user the account cardinality was adjusted. | ||||||
</Callout> | ||||||
</Step> | ||||||
|
||||||
## What's next [#whats-next] | ||||||
</Steps> | ||||||
|
||||||
If you want to learn more about high cardinality, see [Understand and query high cardinality metrics](/docs/data-apis/ingest-apis/metric-api/NRQL-high-cardinality-metrics/). | ||||||
## Related topics [#related-topics] | ||||||
|
||||||
<DocTiles> | ||||||
<DocTile title="Monitor cardinality" path="/docs/data-apis/ingest-apis/metric-api/monitor-cardinality" >Learn how to monitor cardinality usage.</DocTile> | ||||||
<DocTile title="Understand and query high cardinality metrics" path="/docs/data-apis/ingest-apis/metric-api/NRQL-high-cardinality-metrics" >Understand the concept of cardinality and learn how to query and analyze high cardinality metrics using NRQL.</DocTile> | ||||||
</DocTiles> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we normally have Prerequisites as part of the procedure?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved it out