DynamoDB / Client / describe_backup
describe_backup#
- DynamoDB.Client.describe_backup(**kwargs)#
Describes an existing backup of a table.
You can call
DescribeBackup
at a maximum rate of 10 times per second.See also: AWS API Documentation
Request Syntax
response = client.describe_backup( BackupArn='string' )
- Parameters:
BackupArn (string) –
[REQUIRED]
The Amazon Resource Name (ARN) associated with the backup.
- Return type:
dict
- Returns:
Response Syntax
{ 'BackupDescription': { 'BackupDetails': { 'BackupArn': 'string', 'BackupName': 'string', 'BackupSizeBytes': 123, 'BackupStatus': 'CREATING'|'DELETED'|'AVAILABLE', 'BackupType': 'USER'|'SYSTEM'|'AWS_BACKUP', 'BackupCreationDateTime': datetime(2015, 1, 1), 'BackupExpiryDateTime': datetime(2015, 1, 1) }, 'SourceTableDetails': { 'TableName': 'string', 'TableId': 'string', 'TableArn': 'string', 'TableSizeBytes': 123, 'KeySchema': [ { 'AttributeName': 'string', 'KeyType': 'HASH'|'RANGE' }, ], 'TableCreationDateTime': datetime(2015, 1, 1), 'ProvisionedThroughput': { 'ReadCapacityUnits': 123, 'WriteCapacityUnits': 123 }, 'OnDemandThroughput': { 'MaxReadRequestUnits': 123, 'MaxWriteRequestUnits': 123 }, 'ItemCount': 123, 'BillingMode': 'PROVISIONED'|'PAY_PER_REQUEST' }, 'SourceTableFeatureDetails': { 'LocalSecondaryIndexes': [ { 'IndexName': 'string', 'KeySchema': [ { 'AttributeName': 'string', 'KeyType': 'HASH'|'RANGE' }, ], 'Projection': { 'ProjectionType': 'ALL'|'KEYS_ONLY'|'INCLUDE', 'NonKeyAttributes': [ 'string', ] } }, ], 'GlobalSecondaryIndexes': [ { 'IndexName': 'string', 'KeySchema': [ { 'AttributeName': 'string', 'KeyType': 'HASH'|'RANGE' }, ], 'Projection': { 'ProjectionType': 'ALL'|'KEYS_ONLY'|'INCLUDE', 'NonKeyAttributes': [ 'string', ] }, 'ProvisionedThroughput': { 'ReadCapacityUnits': 123, 'WriteCapacityUnits': 123 }, 'OnDemandThroughput': { 'MaxReadRequestUnits': 123, 'MaxWriteRequestUnits': 123 } }, ], 'StreamDescription': { 'StreamEnabled': True|False, 'StreamViewType': 'NEW_IMAGE'|'OLD_IMAGE'|'NEW_AND_OLD_IMAGES'|'KEYS_ONLY' }, 'TimeToLiveDescription': { 'TimeToLiveStatus': 'ENABLING'|'DISABLING'|'ENABLED'|'DISABLED', 'AttributeName': 'string' }, 'SSEDescription': { 'Status': 'ENABLING'|'ENABLED'|'DISABLING'|'DISABLED'|'UPDATING', 'SSEType': 'AES256'|'KMS', 'KMSMasterKeyArn': 'string', 'InaccessibleEncryptionDateTime': datetime(2015, 1, 1) } } } }
Response Structure
(dict) –
BackupDescription (dict) –
Contains the description of the backup created for the table.
BackupDetails (dict) –
Contains the details of the backup created for the table.
BackupArn (string) –
ARN associated with the backup.
BackupName (string) –
Name of the requested backup.
BackupSizeBytes (integer) –
Size of the backup in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.
BackupStatus (string) –
Backup can be in one of the following states: CREATING, ACTIVE, DELETED.
BackupType (string) –
BackupType:
USER
- You create and manage these using the on-demand backup feature.SYSTEM
- If you delete a table with point-in-time recovery enabled, aSYSTEM
backup is automatically created and is retained for 35 days (at no additional cost). System backups allow you to restore the deleted table to the state it was in just before the point of deletion.AWS_BACKUP
- On-demand backup created by you from Backup service.
BackupCreationDateTime (datetime) –
Time at which the backup was created. This is the request time of the backup.
BackupExpiryDateTime (datetime) –
Time at which the automatic on-demand backup created by DynamoDB will expire. This
SYSTEM
on-demand backup expires automatically 35 days after its creation.
SourceTableDetails (dict) –
Contains the details of the table when the backup was created.
TableName (string) –
The name of the table for which the backup was created.
TableId (string) –
Unique identifier for the table for which the backup was created.
TableArn (string) –
ARN of the table for which backup was created.
TableSizeBytes (integer) –
Size of the table in bytes. Note that this is an approximate value.
KeySchema (list) –
Schema of the table.
(dict) –
Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.
A
KeySchemaElement
represents exactly one attribute of the primary key. For example, a simple primary key would be represented by oneKeySchemaElement
(for the partition key). A composite primary key would require oneKeySchemaElement
for the partition key, and anotherKeySchemaElement
for the sort key.A
KeySchemaElement
must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.AttributeName (string) –
The name of a key attribute.
KeyType (string) –
The role that this key attribute will assume:
HASH
- partition keyRANGE
- sort key
Note
The partition key of an item is also known as its hash attribute. The term “hash attribute” derives from DynamoDB’s usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.
The sort key of an item is also known as its range attribute. The term “range attribute” derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
TableCreationDateTime (datetime) –
Time when the source table was created.
ProvisionedThroughput (dict) –
Read IOPs and Write IOPS on the table when the backup was created.
ReadCapacityUnits (integer) –
The maximum number of strongly consistent reads consumed per second before DynamoDB returns a
ThrottlingException
. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.If read/write capacity mode is
PAY_PER_REQUEST
the value is set to 0.WriteCapacityUnits (integer) –
The maximum number of writes consumed per second before DynamoDB returns a
ThrottlingException
. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.If read/write capacity mode is
PAY_PER_REQUEST
the value is set to 0.
OnDemandThroughput (dict) –
Sets the maximum number of read and write units for the specified on-demand table. If you use this parameter, you must specify
MaxReadRequestUnits
,MaxWriteRequestUnits
, or both.MaxReadRequestUnits (integer) –
Maximum number of read request units for the specified table.
To specify a maximum
OnDemandThroughput
on your table, set the value ofMaxReadRequestUnits
as greater than or equal to 1. To remove the maximumOnDemandThroughput
that is currently set on your table, set the value ofMaxReadRequestUnits
to -1.MaxWriteRequestUnits (integer) –
Maximum number of write request units for the specified table.
To specify a maximum
OnDemandThroughput
on your table, set the value ofMaxWriteRequestUnits
as greater than or equal to 1. To remove the maximumOnDemandThroughput
that is currently set on your table, set the value ofMaxWriteRequestUnits
to -1.
ItemCount (integer) –
Number of items in the table. Note that this is an approximate value.
BillingMode (string) –
Controls how you are charged for read and write throughput and how you manage capacity. This setting can be changed later.
PROVISIONED
- Sets the read/write capacity mode toPROVISIONED
. We recommend usingPROVISIONED
for predictable workloads.PAY_PER_REQUEST
- Sets the read/write capacity mode toPAY_PER_REQUEST
. We recommend usingPAY_PER_REQUEST
for unpredictable workloads.
SourceTableFeatureDetails (dict) –
Contains the details of the features enabled on the table when the backup was created. For example, LSIs, GSIs, streams, TTL.
LocalSecondaryIndexes (list) –
Represents the LSI properties for the table when the backup was created. It includes the IndexName, KeySchema and Projection for the LSIs on the table at the time of backup.
(dict) –
Represents the properties of a local secondary index for the table when the backup was created.
IndexName (string) –
Represents the name of the local secondary index.
KeySchema (list) –
The complete key schema for a local secondary index, which consists of one or more pairs of attribute names and key types:
HASH
- partition keyRANGE
- sort key
Note
The partition key of an item is also known as its hash attribute. The term “hash attribute” derives from DynamoDB’s usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.
The sort key of an item is also known as its range attribute. The term “range attribute” derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
(dict) –
Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.
A
KeySchemaElement
represents exactly one attribute of the primary key. For example, a simple primary key would be represented by oneKeySchemaElement
(for the partition key). A composite primary key would require oneKeySchemaElement
for the partition key, and anotherKeySchemaElement
for the sort key.A
KeySchemaElement
must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.AttributeName (string) –
The name of a key attribute.
KeyType (string) –
The role that this key attribute will assume:
HASH
- partition keyRANGE
- sort key
Note
The partition key of an item is also known as its hash attribute. The term “hash attribute” derives from DynamoDB’s usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.
The sort key of an item is also known as its range attribute. The term “range attribute” derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
Projection (dict) –
Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
ProjectionType (string) –
The set of attributes that are projected into the index:
KEYS_ONLY
- Only the index and primary keys are projected into the index.INCLUDE
- In addition to the attributes described inKEYS_ONLY
, the secondary index will include other non-key attributes that you specify.ALL
- All of the table attributes are projected into the index.
When using the DynamoDB console,
ALL
is selected by default.NonKeyAttributes (list) –
Represents the non-key attribute names which will be projected into the index.
For local secondary indexes, the total count of
NonKeyAttributes
summed across all of the local secondary indexes, must not exceed 100. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.(string) –
GlobalSecondaryIndexes (list) –
Represents the GSI properties for the table when the backup was created. It includes the IndexName, KeySchema, Projection, and ProvisionedThroughput for the GSIs on the table at the time of backup.
(dict) –
Represents the properties of a global secondary index for the table when the backup was created.
IndexName (string) –
The name of the global secondary index.
KeySchema (list) –
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types:
HASH
- partition keyRANGE
- sort key
Note
The partition key of an item is also known as its hash attribute. The term “hash attribute” derives from DynamoDB’s usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.
The sort key of an item is also known as its range attribute. The term “range attribute” derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
(dict) –
Represents a single element of a key schema. A key schema specifies the attributes that make up the primary key of a table, or the key attributes of an index.
A
KeySchemaElement
represents exactly one attribute of the primary key. For example, a simple primary key would be represented by oneKeySchemaElement
(for the partition key). A composite primary key would require oneKeySchemaElement
for the partition key, and anotherKeySchemaElement
for the sort key.A
KeySchemaElement
must be a scalar, top-level attribute (not a nested attribute). The data type must be one of String, Number, or Binary. The attribute cannot be nested within a List or a Map.AttributeName (string) –
The name of a key attribute.
KeyType (string) –
The role that this key attribute will assume:
HASH
- partition keyRANGE
- sort key
Note
The partition key of an item is also known as its hash attribute. The term “hash attribute” derives from DynamoDB’s usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values.
The sort key of an item is also known as its range attribute. The term “range attribute” derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
Projection (dict) –
Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
ProjectionType (string) –
The set of attributes that are projected into the index:
KEYS_ONLY
- Only the index and primary keys are projected into the index.INCLUDE
- In addition to the attributes described inKEYS_ONLY
, the secondary index will include other non-key attributes that you specify.ALL
- All of the table attributes are projected into the index.
When using the DynamoDB console,
ALL
is selected by default.NonKeyAttributes (list) –
Represents the non-key attribute names which will be projected into the index.
For local secondary indexes, the total count of
NonKeyAttributes
summed across all of the local secondary indexes, must not exceed 100. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.(string) –
ProvisionedThroughput (dict) –
Represents the provisioned throughput settings for the specified global secondary index.
ReadCapacityUnits (integer) –
The maximum number of strongly consistent reads consumed per second before DynamoDB returns a
ThrottlingException
. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.If read/write capacity mode is
PAY_PER_REQUEST
the value is set to 0.WriteCapacityUnits (integer) –
The maximum number of writes consumed per second before DynamoDB returns a
ThrottlingException
. For more information, see Specifying Read and Write Requirements in the Amazon DynamoDB Developer Guide.If read/write capacity mode is
PAY_PER_REQUEST
the value is set to 0.
OnDemandThroughput (dict) –
Sets the maximum number of read and write units for the specified on-demand table. If you use this parameter, you must specify
MaxReadRequestUnits
,MaxWriteRequestUnits
, or both.MaxReadRequestUnits (integer) –
Maximum number of read request units for the specified table.
To specify a maximum
OnDemandThroughput
on your table, set the value ofMaxReadRequestUnits
as greater than or equal to 1. To remove the maximumOnDemandThroughput
that is currently set on your table, set the value ofMaxReadRequestUnits
to -1.MaxWriteRequestUnits (integer) –
Maximum number of write request units for the specified table.
To specify a maximum
OnDemandThroughput
on your table, set the value ofMaxWriteRequestUnits
as greater than or equal to 1. To remove the maximumOnDemandThroughput
that is currently set on your table, set the value ofMaxWriteRequestUnits
to -1.
StreamDescription (dict) –
Stream settings on the table when the backup was created.
StreamEnabled (boolean) –
Indicates whether DynamoDB Streams is enabled (true) or disabled (false) on the table.
StreamViewType (string) –
When an item in the table is modified,
StreamViewType
determines what information is written to the stream for this table. Valid values forStreamViewType
are:KEYS_ONLY
- Only the key attributes of the modified item are written to the stream.NEW_IMAGE
- The entire item, as it appears after it was modified, is written to the stream.OLD_IMAGE
- The entire item, as it appeared before it was modified, is written to the stream.NEW_AND_OLD_IMAGES
- Both the new and the old item images of the item are written to the stream.
TimeToLiveDescription (dict) –
Time to Live settings on the table when the backup was created.
TimeToLiveStatus (string) –
The TTL status for the table.
AttributeName (string) –
The name of the TTL attribute for items in the table.
SSEDescription (dict) –
The description of the server-side encryption status on the table when the backup was created.
Status (string) –
Represents the current state of server-side encryption. The only supported values are:
ENABLED
- Server-side encryption is enabled.UPDATING
- Server-side encryption is being updated.
SSEType (string) –
Server-side encryption type. The only supported value is:
KMS
- Server-side encryption that uses Key Management Service. The key is stored in your account and is managed by KMS (KMS charges apply).
KMSMasterKeyArn (string) –
The KMS key ARN used for the KMS encryption.
InaccessibleEncryptionDateTime (datetime) –
Indicates the time, in UNIX epoch date format, when DynamoDB detected that the table’s KMS key was inaccessible. This attribute will automatically be cleared when DynamoDB detects that the table’s KMS key is accessible again. DynamoDB will initiate the table archival process when table’s KMS key remains inaccessible for more than seven days from this date.
Exceptions
DynamoDB.Client.exceptions.BackupNotFoundException
DynamoDB.Client.exceptions.InternalServerError