Skip to content

Commit eae6c31

Browse files
author
AWS
committed
Amazon DynamoDB Update: 1) Amazon Contributor Insights for Amazon DynamoDB is a diagnostic tool for identifying frequently accessed keys and understanding database traffic trends. 2) Support for displaying new fields when a table's encryption state is Inaccessible or the table have been Archived.
1 parent 69db575 commit eae6c31

File tree

3 files changed

+263
-2
lines changed

3 files changed

+263
-2
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "feature",
3+
"category": "Amazon DynamoDB",
4+
"description": "1) Amazon Contributor Insights for Amazon DynamoDB is a diagnostic tool for identifying frequently accessed keys and understanding database traffic trends. 2) Support for displaying new fields when a table's encryption state is Inaccessible or the table have been Archived."
5+
}

services/dynamodb/src/main/resources/codegen-resources/dynamodb/paginators-1.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@
44
"input_token": "RequestItems",
55
"output_token": "UnprocessedKeys"
66
},
7+
"ListContributorInsights": {
8+
"input_token": "NextToken",
9+
"limit_key": "MaxResults",
10+
"output_token": "NextToken"
11+
},
712
"ListTables": {
813
"input_token": "ExclusiveStartTableName",
914
"limit_key": "Limit",

services/dynamodb/src/main/resources/codegen-resources/dynamodb/service-2.json

Lines changed: 253 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,20 @@
194194
"endpointdiscovery":{
195195
}
196196
},
197+
"DescribeContributorInsights":{
198+
"name":"DescribeContributorInsights",
199+
"http":{
200+
"method":"POST",
201+
"requestUri":"/"
202+
},
203+
"input":{"shape":"DescribeContributorInsightsInput"},
204+
"output":{"shape":"DescribeContributorInsightsOutput"},
205+
"errors":[
206+
{"shape":"ResourceNotFoundException"},
207+
{"shape":"InternalServerError"}
208+
],
209+
"documentation":"<p>Returns information about contributor insights, for a given table or global secondary index.</p>"
210+
},
197211
"DescribeEndpoints":{
198212
"name":"DescribeEndpoints",
199213
"http":{
@@ -331,6 +345,20 @@
331345
"endpointdiscovery":{
332346
}
333347
},
348+
"ListContributorInsights":{
349+
"name":"ListContributorInsights",
350+
"http":{
351+
"method":"POST",
352+
"requestUri":"/"
353+
},
354+
"input":{"shape":"ListContributorInsightsInput"},
355+
"output":{"shape":"ListContributorInsightsOutput"},
356+
"errors":[
357+
{"shape":"ResourceNotFoundException"},
358+
{"shape":"InternalServerError"}
359+
],
360+
"documentation":"<p>Returns a list of ContributorInsightsSummary for a table and all its global secondary indexes.</p>"
361+
},
334362
"ListGlobalTables":{
335363
"name":"ListGlobalTables",
336364
"http":{
@@ -566,6 +594,20 @@
566594
"endpointdiscovery":{
567595
}
568596
},
597+
"UpdateContributorInsights":{
598+
"name":"UpdateContributorInsights",
599+
"http":{
600+
"method":"POST",
601+
"requestUri":"/"
602+
},
603+
"input":{"shape":"UpdateContributorInsightsInput"},
604+
"output":{"shape":"UpdateContributorInsightsOutput"},
605+
"errors":[
606+
{"shape":"ResourceNotFoundException"},
607+
{"shape":"InternalServerError"}
608+
],
609+
"documentation":"<p>Updates the status for contributor insights for a specific table or index.</p>"
610+
},
569611
"UpdateGlobalTable":{
570612
"name":"UpdateGlobalTable",
571613
"http":{
@@ -680,6 +722,25 @@
680722
}
681723
},
682724
"shapes":{
725+
"ArchivalReason":{"type":"string"},
726+
"ArchivalSummary":{
727+
"type":"structure",
728+
"members":{
729+
"ArchivalDateTime":{
730+
"shape":"Date",
731+
"documentation":"<p>The date and time when table archival was initiated by DynamoDB, in UNIX epoch time format.</p>"
732+
},
733+
"ArchivalReason":{
734+
"shape":"ArchivalReason",
735+
"documentation":"<p>The reason DynamoDB archived the table. Currently, the only possible value is:</p> <ul> <li> <p> <code>INACCESSIBLE_ENCRYPTION_CREDENTIALS</code> - The table was archived due to the table's AWS KMS key being inaccessible for more than seven days. An On-Demand backup was created at the archival time.</p> </li> </ul>"
736+
},
737+
"ArchivalBackupArn":{
738+
"shape":"BackupArn",
739+
"documentation":"<p>The Amazon Resource Name (ARN) of the backup the table was archived to, when applicable in the archival reason. If you wish to restore this backup to the same table name, you will need to delete the original table.</p>"
740+
}
741+
},
742+
"documentation":"<p>Contains details of a table archival operation.</p>"
743+
},
683744
"AttributeAction":{
684745
"type":"string",
685746
"enum":[
@@ -1424,6 +1485,53 @@
14241485
"documentation":"<p>Backups have not yet been enabled for this table.</p>",
14251486
"exception":true
14261487
},
1488+
"ContributorInsightsAction":{
1489+
"type":"string",
1490+
"enum":[
1491+
"ENABLE",
1492+
"DISABLE"
1493+
]
1494+
},
1495+
"ContributorInsightsRule":{
1496+
"type":"string",
1497+
"pattern":"[A-Za-z0-9][A-Za-z0-9\\-\\_\\.]{0,126}[A-Za-z0-9]"
1498+
},
1499+
"ContributorInsightsRuleList":{
1500+
"type":"list",
1501+
"member":{"shape":"ContributorInsightsRule"}
1502+
},
1503+
"ContributorInsightsStatus":{
1504+
"type":"string",
1505+
"enum":[
1506+
"ENABLING",
1507+
"ENABLED",
1508+
"DISABLING",
1509+
"DISABLED",
1510+
"FAILED"
1511+
]
1512+
},
1513+
"ContributorInsightsSummaries":{
1514+
"type":"list",
1515+
"member":{"shape":"ContributorInsightsSummary"}
1516+
},
1517+
"ContributorInsightsSummary":{
1518+
"type":"structure",
1519+
"members":{
1520+
"TableName":{
1521+
"shape":"TableName",
1522+
"documentation":"<p>Name of the table associated with the summary.</p>"
1523+
},
1524+
"IndexName":{
1525+
"shape":"IndexName",
1526+
"documentation":"<p>Name of the index associated with the summary, if any.</p>"
1527+
},
1528+
"ContributorInsightsStatus":{
1529+
"shape":"ContributorInsightsStatus",
1530+
"documentation":"<p>Describes the current status for contributor insights for the given table and index, if applicable.</p>"
1531+
}
1532+
},
1533+
"documentation":"<p>Represents a Contributor Insights summary entry..</p>"
1534+
},
14271535
"CreateBackupInput":{
14281536
"type":"structure",
14291537
"required":[
@@ -1820,6 +1928,49 @@
18201928
}
18211929
}
18221930
},
1931+
"DescribeContributorInsightsInput":{
1932+
"type":"structure",
1933+
"required":["TableName"],
1934+
"members":{
1935+
"TableName":{
1936+
"shape":"TableName",
1937+
"documentation":"<p>The name of the table to describe.</p>"
1938+
},
1939+
"IndexName":{
1940+
"shape":"IndexName",
1941+
"documentation":"<p>The name of the global secondary index to describe, if applicable.</p>"
1942+
}
1943+
}
1944+
},
1945+
"DescribeContributorInsightsOutput":{
1946+
"type":"structure",
1947+
"members":{
1948+
"TableName":{
1949+
"shape":"TableName",
1950+
"documentation":"<p>The name of the table being described.</p>"
1951+
},
1952+
"IndexName":{
1953+
"shape":"IndexName",
1954+
"documentation":"<p>The name of the global secondary index being described.</p>"
1955+
},
1956+
"ContributorInsightsRuleList":{
1957+
"shape":"ContributorInsightsRuleList",
1958+
"documentation":"<p>List of names of the associated Alpine rules.</p>"
1959+
},
1960+
"ContributorInsightsStatus":{
1961+
"shape":"ContributorInsightsStatus",
1962+
"documentation":"<p>Current Status contributor insights.</p>"
1963+
},
1964+
"LastUpdateDateTime":{
1965+
"shape":"LastUpdateDateTime",
1966+
"documentation":"<p>Timestamp of the last time the status was changed.</p>"
1967+
},
1968+
"FailureException":{
1969+
"shape":"FailureException",
1970+
"documentation":"<p>Returns information about the last failure that encountered.</p> <p>The most common exceptions for a FAILED status are:</p> <ul> <li> <p>LimitExceededException - Per-account Amazon CloudWatch Contributor Insights rule limit reached. Please disable Contributor Insights for other tables/indexes OR disable Contributor Insights rules before retrying.</p> </li> <li> <p>AccessDeniedException - Amazon CloudWatch Contributor Insights rules cannot be modified due to insufficient permissions.</p> </li> <li> <p>AccessDeniedException - Failed to create service-linked role for Contributor Insights due to insufficient permissions.</p> </li> <li> <p>InternalServerError - Failed to create Amazon CloudWatch Contributor Insights rules. Please retry request.</p> </li> </ul>"
1971+
}
1972+
}
1973+
},
18231974
"DescribeEndpointsRequest":{
18241975
"type":"structure",
18251976
"members":{
@@ -1988,6 +2139,8 @@
19882139
"member":{"shape":"Endpoint"}
19892140
},
19902141
"ErrorMessage":{"type":"string"},
2142+
"ExceptionDescription":{"type":"string"},
2143+
"ExceptionName":{"type":"string"},
19912144
"ExpectedAttributeMap":{
19922145
"type":"map",
19932146
"key":{"shape":"AttributeName"},
@@ -2027,6 +2180,20 @@
20272180
"value":{"shape":"AttributeValue"}
20282181
},
20292182
"ExpressionAttributeValueVariable":{"type":"string"},
2183+
"FailureException":{
2184+
"type":"structure",
2185+
"members":{
2186+
"ExceptionName":{
2187+
"shape":"ExceptionName",
2188+
"documentation":"<p>Exception name.</p>"
2189+
},
2190+
"ExceptionDescription":{
2191+
"shape":"ExceptionDescription",
2192+
"documentation":"<p>Description of the failure.</p>"
2193+
}
2194+
},
2195+
"documentation":"<p>Represents a failure a contributor insights operation.</p>"
2196+
},
20302197
"FilterConditionMap":{
20312198
"type":"map",
20322199
"key":{"shape":"AttributeName"},
@@ -2546,6 +2713,7 @@
25462713
},
25472714
"documentation":"<p>Represents a set of primary keys and, for each key, the attributes to retrieve from the table.</p> <p>For each primary key, you must provide <i>all</i> of the key attributes. For example, with a simple primary key, you only need to provide the partition key. For a composite primary key, you must provide <i>both</i> the partition key and the sort key.</p>"
25482715
},
2716+
"LastUpdateDateTime":{"type":"timestamp"},
25492717
"LimitExceededException":{
25502718
"type":"structure",
25512719
"members":{
@@ -2603,6 +2771,40 @@
26032771
}
26042772
}
26052773
},
2774+
"ListContributorInsightsInput":{
2775+
"type":"structure",
2776+
"members":{
2777+
"TableName":{
2778+
"shape":"TableName",
2779+
"documentation":"<p>The name of the table.</p>"
2780+
},
2781+
"NextToken":{
2782+
"shape":"NextTokenString",
2783+
"documentation":"<p>A token to for the desired page, if there is one.</p>"
2784+
},
2785+
"MaxResults":{
2786+
"shape":"ListContributorInsightsLimit",
2787+
"documentation":"<p>Maximum number of results to return per page.</p>"
2788+
}
2789+
}
2790+
},
2791+
"ListContributorInsightsLimit":{
2792+
"type":"integer",
2793+
"max":100
2794+
},
2795+
"ListContributorInsightsOutput":{
2796+
"type":"structure",
2797+
"members":{
2798+
"ContributorInsightsSummaries":{
2799+
"shape":"ContributorInsightsSummaries",
2800+
"documentation":"<p>A list of ContributorInsightsSummary.</p>"
2801+
},
2802+
"NextToken":{
2803+
"shape":"NextTokenString",
2804+
"documentation":"<p>A token to go to the next page if there is one.</p>"
2805+
}
2806+
}
2807+
},
26062808
"ListGlobalTablesInput":{
26072809
"type":"structure",
26082810
"members":{
@@ -3730,6 +3932,10 @@
37303932
"KMSMasterKeyArn":{
37313933
"shape":"KMSMasterKeyArn",
37323934
"documentation":"<p>The AWS KMS customer master key (CMK) ARN used for the AWS KMS encryption.</p>"
3935+
},
3936+
"InaccessibleEncryptionDateTime":{
3937+
"shape":"Date",
3938+
"documentation":"<p>Indicates the time, in UNIX epoch date format, when DynamoDB detected that the table's AWS KMS key was inaccessible. This attribute will automatically be cleared when DynamoDB detects that the table's AWS KMS key is accessible again. DynamoDB will initiate the table archival process when table's AWS KMS key remains inaccessible for more than seven days from this date.</p>"
37333939
}
37343940
},
37353941
"documentation":"<p>The description of the server-side encryption status on the specified table.</p>"
@@ -4052,7 +4258,7 @@
40524258
},
40534259
"TableStatus":{
40544260
"shape":"TableStatus",
4055-
"documentation":"<p>The current state of the table:</p> <ul> <li> <p> <code>CREATING</code> - The table is being created.</p> </li> <li> <p> <code>UPDATING</code> - The table is being updated.</p> </li> <li> <p> <code>DELETING</code> - The table is being deleted.</p> </li> <li> <p> <code>ACTIVE</code> - The table is ready for use.</p> </li> </ul>"
4261+
"documentation":"<p>The current state of the table:</p> <ul> <li> <p> <code>CREATING</code> - The table is being created.</p> </li> <li> <p> <code>UPDATING</code> - The table is being updated.</p> </li> <li> <p> <code>DELETING</code> - The table is being deleted.</p> </li> <li> <p> <code>ACTIVE</code> - The table is ready for use.</p> </li> <li> <p> <code>INACCESSIBLE_ENCRYPTION_CREDENTIALS</code> - The AWS KMS key used to encrypt the table in inaccessible. Table operations may fail due to failure to use the AWS KMS key. DynamoDB will initiate the table archival process when a table's AWS KMS key remains inaccessible for more than seven days. </p> </li> <li> <p> <code>ARCHIVING</code> - The table is being archived. Operations are not allowed until archival is complete. </p> </li> <li> <p> <code>ARCHIVED</code> - The table has been archived. See the ArchivalReason for more information. </p> </li> </ul>"
40564262
},
40574263
"CreationDateTime":{
40584264
"shape":"Date",
@@ -4117,6 +4323,10 @@
41174323
"SSEDescription":{
41184324
"shape":"SSEDescription",
41194325
"documentation":"<p>The description of the server-side encryption status on the specified table.</p>"
4326+
},
4327+
"ArchivalSummary":{
4328+
"shape":"ArchivalSummary",
4329+
"documentation":"<p>Contains information about the table archive.</p>"
41204330
}
41214331
},
41224332
"documentation":"<p>Represents the properties of a table.</p>"
@@ -4157,7 +4367,10 @@
41574367
"CREATING",
41584368
"UPDATING",
41594369
"DELETING",
4160-
"ACTIVE"
4370+
"ACTIVE",
4371+
"INACCESSIBLE_ENCRYPTION_CREDENTIALS",
4372+
"ARCHIVING",
4373+
"ARCHIVED"
41614374
]
41624375
},
41634376
"Tag":{
@@ -4477,6 +4690,44 @@
44774690
}
44784691
}
44794692
},
4693+
"UpdateContributorInsightsInput":{
4694+
"type":"structure",
4695+
"required":[
4696+
"TableName",
4697+
"ContributorInsightsAction"
4698+
],
4699+
"members":{
4700+
"TableName":{
4701+
"shape":"TableName",
4702+
"documentation":"<p>The name of the table.</p>"
4703+
},
4704+
"IndexName":{
4705+
"shape":"IndexName",
4706+
"documentation":"<p>The global secondary index name, if applicable.</p>"
4707+
},
4708+
"ContributorInsightsAction":{
4709+
"shape":"ContributorInsightsAction",
4710+
"documentation":"<p>Represents the contributor insights action.</p>"
4711+
}
4712+
}
4713+
},
4714+
"UpdateContributorInsightsOutput":{
4715+
"type":"structure",
4716+
"members":{
4717+
"TableName":{
4718+
"shape":"TableName",
4719+
"documentation":"<p>The name of the table.</p>"
4720+
},
4721+
"IndexName":{
4722+
"shape":"IndexName",
4723+
"documentation":"<p>The name of the global secondary index, if applicable.</p>"
4724+
},
4725+
"ContributorInsightsStatus":{
4726+
"shape":"ContributorInsightsStatus",
4727+
"documentation":"<p>The status of contributor insights</p>"
4728+
}
4729+
}
4730+
},
44804731
"UpdateExpression":{"type":"string"},
44814732
"UpdateGlobalSecondaryIndexAction":{
44824733
"type":"structure",

0 commit comments

Comments
 (0)