AWS amazondynamodb documentation change
Summary
Added documentation for two CloudWatch Contributor Insights modes (accessed+throttled vs throttled-only), including mode behaviors, rule differences, billing impacts, and graphing changes
Security assessment
The changes introduce monitoring modes but don't address vulnerabilities or security controls. Focus is on operational visibility and cost optimization rather than security protections. No mention of authentication, encryption, or access control changes.
Diff
diff --git a/amazondynamodb/latest/developerguide/contributorinsights_HowItWorks.md b/amazondynamodb/latest/developerguide/contributorinsights_HowItWorks.md index a3e542283..aa0c520b8 100644 --- a//amazondynamodb/latest/developerguide/contributorinsights_HowItWorks.md +++ b//amazondynamodb/latest/developerguide/contributorinsights_HowItWorks.md @@ -5 +5 @@ -CloudWatch contributor insights for DynamoDB rulesUnderstanding CloudWatch contributor insights for DynamoDB graphsInteractions with other DynamoDB featuresCloudWatch contributor insights for DynamoDB billing +CloudWatch contributor insights modes for DynamoDBCloudWatch contributor insights for DynamoDB rulesUnderstanding CloudWatch contributor insights for DynamoDB graphsInteractions with other DynamoDB featuresCloudWatch contributor insights for DynamoDB billing @@ -18,0 +19,2 @@ The following sections describe the core concepts and behavior of CloudWatch Con + * CloudWatch contributor insights modes for DynamoDB + @@ -29,0 +32,56 @@ The following sections describe the core concepts and behavior of CloudWatch Con +## CloudWatch contributor insights modes for DynamoDB + +CloudWatch Contributor Insights for DynamoDB offers two distinct modes to meet different monitoring needs. + +### Accessed and throttled keys mode + +This mode provides comprehensive monitoring of both accessed and throttled items. In this mode, DynamoDB tracks: + + * **Most accessed items** — Items that consume the most read and write capacity + + * **Most throttled items** — Items that experience the most throttling events + + + + +This mode is ideal when you need complete visibility into your table's access patterns and want to understand both high-traffic items and throttling issues. + +### Throttled keys mode + +This mode focuses exclusively on throttled requests by only processing events when throttling occurs. It delivers critical insights about performance issues. In this mode, DynamoDB tracks only: + + * **Most throttled items** — Items that experience the most throttling events + + + + +This mode is ideal when: + + * Your primary concern is identifying and resolving throttling problems + + * You want to keep Contributor Insights enabled continuously for real-time throttling detection + + + + +###### Note + +Throttled keys mode only generates graphs and metrics when throttling actually occurs. If your table experiences no throttling, you won't see any data in the Contributor Insights graphs, which indicates healthy performance. + +### Switching between modes + +You can switch between modes at any time using the DynamoDB console, AWS CLI, or APIs. When you switch modes: + + * Existing CloudWatch rules are updated to match the new mode + + * Throttled key CloudWatch rules remain intact, maintaining your continuous historical data for throttling metrics: + + * When you switch from _throttled keys_ mode to _accessed and throttled keys_ mode, the existing throttled key rules are preserved, and new accessed key rules are created + + * When you switch from _accessed and throttled keys_ mode to _throttled keys_ mode, only the throttled key rules are preserved, and the accessed key rules are removed + + * Billing adjusts immediately to reflect the new mode's event processing + + + + @@ -32 +90,9 @@ The following sections describe the core concepts and behavior of CloudWatch Con -When you enable CloudWatch Contributor Insights for DynamoDB on a table or global secondary index, DynamoDB creates the following [rules](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContributorInsights-RuleSyntax.html) on your behalf: +When you enable CloudWatch Contributor Insights for DynamoDB on a table or global secondary index, DynamoDB creates [rules](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ContributorInsights-RuleSyntax.html) on your behalf based on the selected mode. + +###### Note + +When you enable Contributor Insights on your DynamoDB table, you're subject to Contributor Insights rules limits. For more information, see [CloudWatch service quotas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html). + +### Rules for accessed and throttled keys mode + +In _accessed and throttled keys_ mode, DynamoDB creates the following rules: @@ -45,4 +110,0 @@ CloudWatch rule name format: `DynamoDBContributorInsights-PKT-[resource_name]-[c -###### Note - -When you enable Contributor Insights on your DynamoDB table, you're still subject to Contributor Insights rules limits. For more information, see [CloudWatch service quotas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html). - @@ -61,0 +124,22 @@ CloudWatch rule name format: `DynamoDBContributorInsights-SKT-[resource_name]-[c +### Rules for throttled keys mode + +In _throttled keys_ mode, DynamoDB creates only the throttling-related rules: + + * **Most throttled keys (partition key)** — Identifies the partition keys of the most throttled items in your table or global secondary index. + +CloudWatch rule name format: `DynamoDBContributorInsights-PKT-[resource_name]-[creationtimestamp]` + + + + +If your table or global secondary index has a sort key, DynamoDB also creates: + + * **Most throttled keys (partition and sort keys)** — Identifies the partition and sort keys of the most throttled items in your table or global secondary index. + +CloudWatch rule name format: `DynamoDBContributorInsights-SKT-[resource_name]-[creationtimestamp]` + + + + +This focused approach reduces the number of active rules and decreases the volume of events processed to better diagnose your throttling events. + @@ -63,0 +148,2 @@ CloudWatch rule name format: `DynamoDBContributorInsights-SKT-[resource_name]-[c + * When you use the CloudWatch console or APIs to view CloudWatch Contributor Insights for DynamoDB, you only see rules corresponding to your selected mode. + @@ -77 +163,12 @@ You can create CloudWatch Alarms using the CloudWatch Contributor Insights for D -CloudWatch Contributor Insights for DynamoDB displays two types of graphs on both the DynamoDB and CloudWatch consoles: _Most Accessed Items_ and _Most Throttled Items_. +CloudWatch Contributor Insights for DynamoDB displays different types of graphs on both the DynamoDB and CloudWatch consoles depending on the selected mode. + +### Graph availability by mode + +The graphs displayed depend on your selected Contributor Insights mode. + + * **Accessed and throttled keys mode** displays both _Most Accessed Items_ and _Most Throttled Items_ graphs + + * **Throttled keys mode** displays only _Most Throttled Items_ graphs + + + @@ -81 +178 @@ CloudWatch Contributor Insights for DynamoDB displays two types of graphs on bot -Use this graph to identify the most accessed items in the table or global secondary index. The graph displays `ConsumedThroughputUnits` on the y-axis and time on the x-axis. Each of the top N keys is displayed in its own color, with a legend displayed below the x-axis. +This graph is available only in accessed and throttled keys mode. Use this graph to identify the most accessed items in the table or global secondary index. The graph displays `ConsumedThroughputUnits` on the y-axis and time on the x-axis. Each of the top N keys is displayed in its own color, with a legend displayed below the x-axis. @@ -100 +197 @@ If your table or global secondary index has a sort key, DynamoDB creates two gra -Use this graph to identify the most throttled items in the table or global secondary index. The graph displays `ThrottleCount` on the y-axis and time on the x-axis. Each of the top _N_ keys is displayed in its own color, with a legend displayed below the x-axis. +This graph is available in both modes. Use this graph to identify the most throttled items in the table or global secondary index. The graph displays `ThrottleCount` on the y-axis and time on the x-axis. Each of the top _N_ keys is displayed in its own color, with a legend displayed below the x-axis. @@ -111,0 +209,4 @@ If your table or global secondary index has a sort key, DynamoDB creates two gra +###### Note + +In _throttled keys_ mode, this is the only type of graph you'll see. The absence of data in these graphs indicates healthy table performance with no throttling occurring. + @@ -114 +215 @@ If your table or global secondary index has a sort key, DynamoDB creates two gra -The following are examples of the reports generated for a table with both a partition key and sort key. +The following example shows the reports generated for a table with both a partition key and sort key in _accessed and throttled keys_ modes. In _throttled keys_ mode, you see only the throttling-related portion of this report. @@ -120 +221 @@ The following are examples of the reports generated for a table with both a part -The following sections describe how CloudWatch Contributor Insights for DynamoDB behaves and interacts with several other features in DynamoDB. +The following sections describe how CloudWatch Contributor Insights for DynamoDB behaves and interacts with several other features in DynamoDB. These behaviors apply to both modes unless otherwise specified. @@ -125,0 +227,2 @@ CloudWatch Contributor Insights for DynamoDB monitors global table replicas as d +Each replica can be configured with a different Contributor Insights mode independently. For example, you might use _accessed and throttled keys_ mode in your primary region for comprehensive monitoring, while using _throttled keys_ mode in secondary regions to maintain visibility into performance issues. + @@ -146 +249 @@ CloudWatch Contributor Insights for DynamoDB doesn't function differently for ta -If the table’s primary key contains FGAC-protected data that you don't want published to CloudWatch, you should not enable CloudWatch Contributor Insights for DynamoDB for that table. +If the table's primary key contains FGAC-protected data that you don't want published to CloudWatch, you should not enable CloudWatch Contributor Insights for DynamoDB for that table. @@ -154 +257,7 @@ You control access to CloudWatch Contributor Insights for DynamoDB using AWS Ide -Charges for CloudWatch Contributor Insights for DynamoDB appear in the [CloudWatch](https://aws.amazon.com/cloudwatch/pricing/) section of your monthly bill. These charges are calculated based on the number of DynamoDB events that are processed. For tables and global secondary indexes with CloudWatch Contributor Insights for DynamoDB enabled, each item that is written or read via a [data plane](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.API.html#HowItWorks.API.DataPlane) operation represents one event. +Charges for CloudWatch Contributor Insights for DynamoDB appear in the [CloudWatch](https://aws.amazon.com/cloudwatch/pricing/) section of your monthly bill. These charges are calculated based on the number of DynamoDB events that are processed, and the selected mode. + +### Billing by mode + +The two Contributor Insights modes have different billing characteristics. + + * **Accessed and throttled keys mode billing** \- In this mode, each item that is written or read via a [data plane](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.API.html#HowItWorks.API.DataPlane) operation represents one event, regardless of whether the request succeeds or is throttled. If a table or global secondary index includes a sort key, each item that is read or written represents two events. This is because DynamoDB is identifying top contributors from separate time series: one for partitions keys only, and one for partition and sort key pairs. @@ -156 +265 @@ Charges for CloudWatch Contributor Insights for DynamoDB appear in the [CloudWat -If a table or global secondary index includes a sort key, each item that is read or written represents two events. This is because DynamoDB is identifying top contributors from separate time series: one for partitions keys only, and one for partition and sort key pairs. + * **Throttled keys mode billing** \- In this mode, only throttled requests generate billable events. Events are only generated when requests result in `ProvisionedThroughputExceededException`, `ThrottlingException`, or `RequestLimitExceeded` errors. If a table or global secondary index includes a sort key, each throttled item represents two events (partition key tracking and partition + sort key tracking). @@ -158 +267,8 @@ If a table or global secondary index includes a sort key, each item that is read -For example, assume that your application performs the following DynamoDB operations: a `GetItem`, a `PutItem`, and a `BatchWriteItem` that puts five items + + + +### Billing examples + +For example, assume that your application performs the following DynamoDB operations: a `GetItem`, a `PutItem`, and a `BatchWriteItem` that puts five items. Also assume that the `PutItem` operation gets throttled, but all other operations succeed. + + * **Accessed and throttled keys mode** @@ -164 +280,9 @@ For example, assume that your application performs the following DynamoDB operat - * A `Query` operation always results in 1 event, regardless of the number of items returned. + * **Throttled keys mode** + + * If your table or global secondary index has only a partition key, it results in 1 event (only for the throttled `PutItem`). + + * If your table or global secondary index has a partition key and sort key, it results in 2 events (2 for the throttled `PutItem`). + +The successful `GetItem` and `BatchWriteItem` operations generate no events in throttled keys mode. + + @@ -166,0 +291 @@ For example, assume that your application performs the following DynamoDB operat +### Common billing factors @@ -167,0 +293 @@ For example, assume that your application performs the following DynamoDB operat +A`Query` operation always results in 1 event, regardless of the mode or number of items returned.