2020/01/23 - Amazon Relational Database Service - 3 new api methods
Changes This SDK release introduces APIs that automate the export of Amazon RDS snapshot data to Amazon S3. The new APIs include: StartExportTask, CancelExportTask, DescribeExportTasks. These APIs automate the extraction of data from an RDS snapshot and export it to an Amazon S3 bucket. The data is stored in a compressed, consistent, and query-able format. After the data is exported, you can query it directly using tools such as Amazon Athena or Redshift Spectrum. You can also consume the data as part of a data lake solution. If you archive the data in S3 Infrequent Access or Glacier, you can reduce long term data storage costs by applying data lifecycle policies.
Starts an export of a snapshot to Amazon S3. The provided IAM role must have access to the S3 bucket.
See also: AWS API Documentation
Request Syntax
client.start_export_task( ExportTaskIdentifier='string', SourceArn='string', S3BucketName='string', IamRoleArn='string', KmsKeyId='string', S3Prefix='string', ExportOnly=[ 'string', ] )
string
[REQUIRED]
A unique identifier for the snapshot export task. This ID isn't an identifier for the Amazon S3 bucket where the snapshot is to be exported to.
string
[REQUIRED]
The Amazon Resource Name (ARN) of the snapshot to export to Amazon S3.
string
[REQUIRED]
The name of the Amazon S3 bucket to export the snapshot to.
string
[REQUIRED]
The name of the IAM role to use for writing to the Amazon S3 bucket when exporting a snapshot.
string
[REQUIRED]
The ID of the AWS KMS key to use to encrypt the snapshot exported to Amazon S3. The KMS key ID is the Amazon Resource Name (ARN), the KMS key identifier, or the KMS key alias for the KMS encryption key. The IAM role used for the snapshot export must have encryption and decryption permissions to use this KMS key.
string
The Amazon S3 bucket prefix to use as the file name and path of the exported snapshot.
list
The data to be exported from the snapshot. If this parameter is not provided, all the snapshot data is exported. Valid values are the following:
database - Export all the data of the snapshot.
database.table [table-name] - Export a table of the snapshot.
database.schema [schema-name] - Export a database schema of the snapshot. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
database.schema.table [table-name] - Export a table of the database schema. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
(string) --
dict
Response Syntax
{ 'ExportTaskIdentifier': 'string', 'SourceArn': 'string', 'ExportOnly': [ 'string', ], 'SnapshotTime': datetime(2015, 1, 1), 'TaskStartTime': datetime(2015, 1, 1), 'TaskEndTime': datetime(2015, 1, 1), 'S3Bucket': 'string', 'S3Prefix': 'string', 'IamRoleArn': 'string', 'KmsKeyId': 'string', 'Status': 'string', 'PercentProgress': 123, 'TotalExtractedDataInGB': 123, 'FailureCause': 'string', 'WarningMessage': 'string' }
Response Structure
(dict) --
Contains the details of a snapshot export to Amazon S3.
This data type is used as a response element in the DescribeExportTasks action.
ExportTaskIdentifier (string) --
A unique identifier for the snapshot export task. This ID isn't an identifier for the Amazon S3 bucket where the snapshot is exported to.
SourceArn (string) --
The Amazon Resource Name (ARN) of the snapshot exported to Amazon S3.
ExportOnly (list) --
The data exported from the snapshot. Valid values are the following:
database - Export all the data of the snapshot.
database.table [table-name] - Export a table of the snapshot.
database.schema [schema-name] - Export a database schema of the snapshot. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
database.schema.table [table-name] - Export a table of the database schema. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
(string) --
SnapshotTime (datetime) --
The time that the snapshot was created.
TaskStartTime (datetime) --
The time that the snapshot export task started.
TaskEndTime (datetime) --
The time that the snapshot export task completed.
S3Bucket (string) --
The Amazon S3 bucket that the snapshot is exported to.
S3Prefix (string) --
The Amazon S3 bucket prefix that is the file name and path of the exported snapshot.
IamRoleArn (string) --
The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot.
KmsKeyId (string) --
The ID of the AWS KMS key that is used to encrypt the snapshot when it's exported to Amazon S3. The KMS key ID is the Amazon Resource Name (ARN), the KMS key identifier, or the KMS key alias for the KMS encryption key. The IAM role used for the snapshot export must have encryption and decryption permissions to use this KMS key.
Status (string) --
The progress status of the export task.
PercentProgress (integer) --
The progress of the snapshot export task as a percentage.
TotalExtractedDataInGB (integer) --
The total amount of data exported, in gigabytes.
FailureCause (string) --
The reason the export failed, if it failed.
WarningMessage (string) --
A warning about the snapshot export task.
Returns information about a snapshot export to Amazon S3. This API operation supports pagination.
See also: AWS API Documentation
Request Syntax
client.describe_export_tasks( ExportTaskIdentifier='string', SourceArn='string', Filters=[ { 'Name': 'string', 'Values': [ 'string', ] }, ], Marker='string', MaxRecords='string' )
string
The identifier of the snapshot export task to be described.
string
The Amazon Resource Name (ARN) of the snapshot exported to Amazon S3.
list
Filters specify one or more snapshot exports to describe. The filters are specified as name-value pairs that define what to include in the output.
Supported filters include the following:
export-task-identifier - An identifier for the snapshot export task.
s3-bucket - The Amazon S3 bucket the snapshot is exported to.
source-arn - The Amazon Resource Name (ARN) of the snapshot exported to Amazon S3
status - The status of the export task.
(dict) --
A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as IDs. The filters supported by a describe operation are documented with the describe operation.
Note
Currently, wildcards are not supported in filters.
The following actions can be filtered:
DescribeDBClusterBacktracks
DescribeDBClusterEndpoints
DescribeDBClusters
DescribeDBInstances
DescribePendingMaintenanceActions
Name (string) -- [REQUIRED]
The name of the filter. Filter names are case-sensitive.
Values (list) -- [REQUIRED]
One or more filter values. Filter values are case-sensitive.
(string) --
string
An optional pagination token provided by a previous DescribeExportTasks request. If you specify this parameter, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter.
string
The maximum number of records to include in the response. If more records exist than the specified value, a pagination token called a marker is included in the response. You can use the marker in a later DescribeExportTasks request to retrieve the remaining results.
Default: 100
Constraints: Minimum 20, maximum 100.
dict
Response Syntax
{ 'Marker': 'string', 'ExportTasks': [ { 'ExportTaskIdentifier': 'string', 'SourceArn': 'string', 'ExportOnly': [ 'string', ], 'SnapshotTime': datetime(2015, 1, 1), 'TaskStartTime': datetime(2015, 1, 1), 'TaskEndTime': datetime(2015, 1, 1), 'S3Bucket': 'string', 'S3Prefix': 'string', 'IamRoleArn': 'string', 'KmsKeyId': 'string', 'Status': 'string', 'PercentProgress': 123, 'TotalExtractedDataInGB': 123, 'FailureCause': 'string', 'WarningMessage': 'string' }, ] }
Response Structure
(dict) --
Marker (string) --
A pagination token that can be used in a later DescribeExportTasks request. A marker is used for pagination to identify the location to begin output for the next response of DescribeExportTasks .
ExportTasks (list) --
Information about an export of a snapshot to Amazon S3.
(dict) --
Contains the details of a snapshot export to Amazon S3.
This data type is used as a response element in the DescribeExportTasks action.
ExportTaskIdentifier (string) --
A unique identifier for the snapshot export task. This ID isn't an identifier for the Amazon S3 bucket where the snapshot is exported to.
SourceArn (string) --
The Amazon Resource Name (ARN) of the snapshot exported to Amazon S3.
ExportOnly (list) --
The data exported from the snapshot. Valid values are the following:
database - Export all the data of the snapshot.
database.table [table-name] - Export a table of the snapshot.
database.schema [schema-name] - Export a database schema of the snapshot. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
database.schema.table [table-name] - Export a table of the database schema. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
(string) --
SnapshotTime (datetime) --
The time that the snapshot was created.
TaskStartTime (datetime) --
The time that the snapshot export task started.
TaskEndTime (datetime) --
The time that the snapshot export task completed.
S3Bucket (string) --
The Amazon S3 bucket that the snapshot is exported to.
S3Prefix (string) --
The Amazon S3 bucket prefix that is the file name and path of the exported snapshot.
IamRoleArn (string) --
The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot.
KmsKeyId (string) --
The ID of the AWS KMS key that is used to encrypt the snapshot when it's exported to Amazon S3. The KMS key ID is the Amazon Resource Name (ARN), the KMS key identifier, or the KMS key alias for the KMS encryption key. The IAM role used for the snapshot export must have encryption and decryption permissions to use this KMS key.
Status (string) --
The progress status of the export task.
PercentProgress (integer) --
The progress of the snapshot export task as a percentage.
TotalExtractedDataInGB (integer) --
The total amount of data exported, in gigabytes.
FailureCause (string) --
The reason the export failed, if it failed.
WarningMessage (string) --
A warning about the snapshot export task.
Cancels an export task in progress that is exporting a snapshot to Amazon S3. Any data that has already been written to the S3 bucket isn't removed.
See also: AWS API Documentation
Request Syntax
client.cancel_export_task( ExportTaskIdentifier='string' )
string
[REQUIRED]
The identifier of the snapshot export task to cancel.
dict
Response Syntax
{ 'ExportTaskIdentifier': 'string', 'SourceArn': 'string', 'ExportOnly': [ 'string', ], 'SnapshotTime': datetime(2015, 1, 1), 'TaskStartTime': datetime(2015, 1, 1), 'TaskEndTime': datetime(2015, 1, 1), 'S3Bucket': 'string', 'S3Prefix': 'string', 'IamRoleArn': 'string', 'KmsKeyId': 'string', 'Status': 'string', 'PercentProgress': 123, 'TotalExtractedDataInGB': 123, 'FailureCause': 'string', 'WarningMessage': 'string' }
Response Structure
(dict) --
Contains the details of a snapshot export to Amazon S3.
This data type is used as a response element in the DescribeExportTasks action.
ExportTaskIdentifier (string) --
A unique identifier for the snapshot export task. This ID isn't an identifier for the Amazon S3 bucket where the snapshot is exported to.
SourceArn (string) --
The Amazon Resource Name (ARN) of the snapshot exported to Amazon S3.
ExportOnly (list) --
The data exported from the snapshot. Valid values are the following:
database - Export all the data of the snapshot.
database.table [table-name] - Export a table of the snapshot.
database.schema [schema-name] - Export a database schema of the snapshot. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
database.schema.table [table-name] - Export a table of the database schema. This value isn't valid for RDS for MySQL, RDS for MariaDB, or Aurora MySQL.
(string) --
SnapshotTime (datetime) --
The time that the snapshot was created.
TaskStartTime (datetime) --
The time that the snapshot export task started.
TaskEndTime (datetime) --
The time that the snapshot export task completed.
S3Bucket (string) --
The Amazon S3 bucket that the snapshot is exported to.
S3Prefix (string) --
The Amazon S3 bucket prefix that is the file name and path of the exported snapshot.
IamRoleArn (string) --
The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot.
KmsKeyId (string) --
The ID of the AWS KMS key that is used to encrypt the snapshot when it's exported to Amazon S3. The KMS key ID is the Amazon Resource Name (ARN), the KMS key identifier, or the KMS key alias for the KMS encryption key. The IAM role used for the snapshot export must have encryption and decryption permissions to use this KMS key.
Status (string) --
The progress status of the export task.
PercentProgress (integer) --
The progress of the snapshot export task as a percentage.
TotalExtractedDataInGB (integer) --
The total amount of data exported, in gigabytes.
FailureCause (string) --
The reason the export failed, if it failed.
WarningMessage (string) --
A warning about the snapshot export task.