Amazon DynamoDB

2023/09/26 - Amazon DynamoDB - 3 updated api methods

Changes  Amazon DynamoDB now supports Incremental Export as an enhancement to the existing Export Table

DescribeExport (updated) Link ¶
Changes (response)
{'ExportDescription': {'ExportType': 'FULL_EXPORT | INCREMENTAL_EXPORT',
                       'IncrementalExportSpecification': {'ExportFromTime': 'timestamp',
                                                          'ExportToTime': 'timestamp',
                                                          'ExportViewType': 'NEW_IMAGE '
                                                                            '| '
                                                                            'NEW_AND_OLD_IMAGES'}}}

Describes an existing table export.

See also: AWS API Documentation

Request Syntax

client.describe_export(
    ExportArn='string'
)
type ExportArn

string

param ExportArn

[REQUIRED]

The Amazon Resource Name (ARN) associated with the export.

rtype

dict

returns

Response Syntax

{
    'ExportDescription': {
        'ExportArn': 'string',
        'ExportStatus': 'IN_PROGRESS'|'COMPLETED'|'FAILED',
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'ExportManifest': 'string',
        'TableArn': 'string',
        'TableId': 'string',
        'ExportTime': datetime(2015, 1, 1),
        'ClientToken': 'string',
        'S3Bucket': 'string',
        'S3BucketOwner': 'string',
        'S3Prefix': 'string',
        'S3SseAlgorithm': 'AES256'|'KMS',
        'S3SseKmsKeyId': 'string',
        'FailureCode': 'string',
        'FailureMessage': 'string',
        'ExportFormat': 'DYNAMODB_JSON'|'ION',
        'BilledSizeBytes': 123,
        'ItemCount': 123,
        'ExportType': 'FULL_EXPORT'|'INCREMENTAL_EXPORT',
        'IncrementalExportSpecification': {
            'ExportFromTime': datetime(2015, 1, 1),
            'ExportToTime': datetime(2015, 1, 1),
            'ExportViewType': 'NEW_IMAGE'|'NEW_AND_OLD_IMAGES'
        }
    }
}

Response Structure

  • (dict) --

    • ExportDescription (dict) --

      Represents the properties of the export.

      • ExportArn (string) --

        The Amazon Resource Name (ARN) of the table export.

      • ExportStatus (string) --

        Export can be in one of the following states: IN_PROGRESS, COMPLETED, or FAILED.

      • StartTime (datetime) --

        The time at which the export task began.

      • EndTime (datetime) --

        The time at which the export task completed.

      • ExportManifest (string) --

        The name of the manifest file for the export task.

      • TableArn (string) --

        The Amazon Resource Name (ARN) of the table that was exported.

      • TableId (string) --

        Unique ID of the table that was exported.

      • ExportTime (datetime) --

        Point in time from which table data was exported.

      • ClientToken (string) --

        The client token that was provided for the export task. A client token makes calls to ExportTableToPointInTimeInput idempotent, meaning that multiple identical calls have the same effect as one single call.

      • S3Bucket (string) --

        The name of the Amazon S3 bucket containing the export.

      • S3BucketOwner (string) --

        The ID of the Amazon Web Services account that owns the bucket containing the export.

      • S3Prefix (string) --

        The Amazon S3 bucket prefix used as the file name and path of the exported snapshot.

      • S3SseAlgorithm (string) --

        Type of encryption used on the bucket where export data is stored. Valid values for S3SseAlgorithm are:

        • AES256 - server-side encryption with Amazon S3 managed keys

        • KMS - server-side encryption with KMS managed keys

      • S3SseKmsKeyId (string) --

        The ID of the KMS managed key used to encrypt the S3 bucket where export data is stored (if applicable).

      • FailureCode (string) --

        Status code for the result of the failed export.

      • FailureMessage (string) --

        Export failure reason description.

      • ExportFormat (string) --

        The format of the exported data. Valid values for ExportFormat are DYNAMODB_JSON or ION .

      • BilledSizeBytes (integer) --

        The billable size of the table export.

      • ItemCount (integer) --

        The number of items exported.

      • ExportType (string) --

        Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT . If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

      • IncrementalExportSpecification (dict) --

        Optional object containing the parameters specific to an incremental export.

        • ExportFromTime (datetime) --

          Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

        • ExportToTime (datetime) --

          Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

        • ExportViewType (string) --

          Choice of whether to output the previous item image prior to the start time of the incremental export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES .

ExportTableToPointInTime (updated) Link ¶
Changes (request, response)
Request
{'ExportType': 'FULL_EXPORT | INCREMENTAL_EXPORT',
 'IncrementalExportSpecification': {'ExportFromTime': 'timestamp',
                                    'ExportToTime': 'timestamp',
                                    'ExportViewType': 'NEW_IMAGE | '
                                                      'NEW_AND_OLD_IMAGES'}}
Response
{'ExportDescription': {'ExportType': 'FULL_EXPORT | INCREMENTAL_EXPORT',
                       'IncrementalExportSpecification': {'ExportFromTime': 'timestamp',
                                                          'ExportToTime': 'timestamp',
                                                          'ExportViewType': 'NEW_IMAGE '
                                                                            '| '
                                                                            'NEW_AND_OLD_IMAGES'}}}

Exports table data to an S3 bucket. The table must have point in time recovery enabled, and you can export data from any time within the point in time recovery window.

See also: AWS API Documentation

Request Syntax

client.export_table_to_point_in_time(
    TableArn='string',
    ExportTime=datetime(2015, 1, 1),
    ClientToken='string',
    S3Bucket='string',
    S3BucketOwner='string',
    S3Prefix='string',
    S3SseAlgorithm='AES256'|'KMS',
    S3SseKmsKeyId='string',
    ExportFormat='DYNAMODB_JSON'|'ION',
    ExportType='FULL_EXPORT'|'INCREMENTAL_EXPORT',
    IncrementalExportSpecification={
        'ExportFromTime': datetime(2015, 1, 1),
        'ExportToTime': datetime(2015, 1, 1),
        'ExportViewType': 'NEW_IMAGE'|'NEW_AND_OLD_IMAGES'
    }
)
type TableArn

string

param TableArn

[REQUIRED]

The Amazon Resource Name (ARN) associated with the table to export.

type ExportTime

datetime

param ExportTime

Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table export will be a snapshot of the table's state at this point in time.

type ClientToken

string

param ClientToken

Providing a ClientToken makes the call to ExportTableToPointInTimeInput idempotent, meaning that multiple identical calls have the same effect as one single call.

A client token is valid for 8 hours after the first request that uses it is completed. After 8 hours, any request with the same client token is treated as a new request. Do not resubmit the same request with the same client token for more than 8 hours, or the result might not be idempotent.

If you submit a request with the same client token but a change in other parameters within the 8-hour idempotency window, DynamoDB returns an ImportConflictException .

This field is autopopulated if not provided.

type S3Bucket

string

param S3Bucket

[REQUIRED]

The name of the Amazon S3 bucket to export the snapshot to.

type S3BucketOwner

string

param S3BucketOwner

The ID of the Amazon Web Services account that owns the bucket the export will be stored in.

type S3Prefix

string

param S3Prefix

The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.

type S3SseAlgorithm

string

param S3SseAlgorithm

Type of encryption used on the bucket where export data will be stored. Valid values for S3SseAlgorithm are:

  • AES256 - server-side encryption with Amazon S3 managed keys

  • KMS - server-side encryption with KMS managed keys

type S3SseKmsKeyId

string

param S3SseKmsKeyId

The ID of the KMS managed key used to encrypt the S3 bucket where export data will be stored (if applicable).

type ExportFormat

string

param ExportFormat

The format for the exported data. Valid values for ExportFormat are DYNAMODB_JSON or ION .

type ExportType

string

param ExportType

Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT . If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

type IncrementalExportSpecification

dict

param IncrementalExportSpecification

Optional object containing the parameters specific to an incremental export.

  • ExportFromTime (datetime) --

    Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

  • ExportToTime (datetime) --

    Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

  • ExportViewType (string) --

    Choice of whether to output the previous item image prior to the start time of the incremental export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES .

rtype

dict

returns

Response Syntax

{
    'ExportDescription': {
        'ExportArn': 'string',
        'ExportStatus': 'IN_PROGRESS'|'COMPLETED'|'FAILED',
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'ExportManifest': 'string',
        'TableArn': 'string',
        'TableId': 'string',
        'ExportTime': datetime(2015, 1, 1),
        'ClientToken': 'string',
        'S3Bucket': 'string',
        'S3BucketOwner': 'string',
        'S3Prefix': 'string',
        'S3SseAlgorithm': 'AES256'|'KMS',
        'S3SseKmsKeyId': 'string',
        'FailureCode': 'string',
        'FailureMessage': 'string',
        'ExportFormat': 'DYNAMODB_JSON'|'ION',
        'BilledSizeBytes': 123,
        'ItemCount': 123,
        'ExportType': 'FULL_EXPORT'|'INCREMENTAL_EXPORT',
        'IncrementalExportSpecification': {
            'ExportFromTime': datetime(2015, 1, 1),
            'ExportToTime': datetime(2015, 1, 1),
            'ExportViewType': 'NEW_IMAGE'|'NEW_AND_OLD_IMAGES'
        }
    }
}

Response Structure

  • (dict) --

    • ExportDescription (dict) --

      Contains a description of the table export.

      • ExportArn (string) --

        The Amazon Resource Name (ARN) of the table export.

      • ExportStatus (string) --

        Export can be in one of the following states: IN_PROGRESS, COMPLETED, or FAILED.

      • StartTime (datetime) --

        The time at which the export task began.

      • EndTime (datetime) --

        The time at which the export task completed.

      • ExportManifest (string) --

        The name of the manifest file for the export task.

      • TableArn (string) --

        The Amazon Resource Name (ARN) of the table that was exported.

      • TableId (string) --

        Unique ID of the table that was exported.

      • ExportTime (datetime) --

        Point in time from which table data was exported.

      • ClientToken (string) --

        The client token that was provided for the export task. A client token makes calls to ExportTableToPointInTimeInput idempotent, meaning that multiple identical calls have the same effect as one single call.

      • S3Bucket (string) --

        The name of the Amazon S3 bucket containing the export.

      • S3BucketOwner (string) --

        The ID of the Amazon Web Services account that owns the bucket containing the export.

      • S3Prefix (string) --

        The Amazon S3 bucket prefix used as the file name and path of the exported snapshot.

      • S3SseAlgorithm (string) --

        Type of encryption used on the bucket where export data is stored. Valid values for S3SseAlgorithm are:

        • AES256 - server-side encryption with Amazon S3 managed keys

        • KMS - server-side encryption with KMS managed keys

      • S3SseKmsKeyId (string) --

        The ID of the KMS managed key used to encrypt the S3 bucket where export data is stored (if applicable).

      • FailureCode (string) --

        Status code for the result of the failed export.

      • FailureMessage (string) --

        Export failure reason description.

      • ExportFormat (string) --

        The format of the exported data. Valid values for ExportFormat are DYNAMODB_JSON or ION .

      • BilledSizeBytes (integer) --

        The billable size of the table export.

      • ItemCount (integer) --

        The number of items exported.

      • ExportType (string) --

        Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT . If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

      • IncrementalExportSpecification (dict) --

        Optional object containing the parameters specific to an incremental export.

        • ExportFromTime (datetime) --

          Time in the past which provides the inclusive start range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state including and after this point in time.

        • ExportToTime (datetime) --

          Time in the past which provides the exclusive end range for the export table's data, counted in seconds from the start of the Unix epoch. The incremental export will reflect the table's state just prior to this point in time. If this is not provided, the latest time with data available will be used.

        • ExportViewType (string) --

          Choice of whether to output the previous item image prior to the start time of the incremental export. Valid values are NEW_AND_OLD_IMAGES and NEW_IMAGES .

ListExports (updated) Link ¶
Changes (response)
{'ExportSummaries': {'ExportType': 'FULL_EXPORT | INCREMENTAL_EXPORT'}}

Lists completed exports within the past 90 days.

See also: AWS API Documentation

Request Syntax

client.list_exports(
    TableArn='string',
    MaxResults=123,
    NextToken='string'
)
type TableArn

string

param TableArn

The Amazon Resource Name (ARN) associated with the exported table.

type MaxResults

integer

param MaxResults

Maximum number of results to return per page.

type NextToken

string

param NextToken

An optional string that, if supplied, must be copied from the output of a previous call to ListExports . When provided in this manner, the API fetches the next page of results.

rtype

dict

returns

Response Syntax

{
    'ExportSummaries': [
        {
            'ExportArn': 'string',
            'ExportStatus': 'IN_PROGRESS'|'COMPLETED'|'FAILED',
            'ExportType': 'FULL_EXPORT'|'INCREMENTAL_EXPORT'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • ExportSummaries (list) --

      A list of ExportSummary objects.

      • (dict) --

        Summary information about an export task.

        • ExportArn (string) --

          The Amazon Resource Name (ARN) of the export.

        • ExportStatus (string) --

          Export can be in one of the following states: IN_PROGRESS, COMPLETED, or FAILED.

        • ExportType (string) --

          Choice of whether to execute as a full export or incremental export. Valid values are FULL_EXPORT or INCREMENTAL_EXPORT . If INCREMENTAL_EXPORT is provided, the IncrementalExportSpecification must also be used.

    • NextToken (string) --

      If this value is returned, there are additional results to be displayed. To retrieve them, call ListExports again, with NextToken set to this value.