AWS Database Migration Service
API Reference (API Version 2016-01-01)

S3Settings

Settings for exporting data to Amazon S3.

Contents

BucketFolder

An optional parameter to set a folder name in the S3 bucket. If provided, tables are created in the path <bucketFolder>/<schema_name>/<table_name>/. If this parameter is not specified, then the path used is <schema_name>/<table_name>/.

Type: String

Required: No

BucketName

The name of the S3 bucket.

Type: String

Required: No

CdcInsertsOnly

Option to write only INSERT operations to the comma-separated value (CSV) output files. By default, the first field in a CSV record contains the letter I (insert), U (update) or D (delete) to indicate whether the row was inserted, updated, or deleted at the source database. If cdcInsertsOnly is set to true, then only INSERTs are recorded in the CSV file, without the I annotation on each line. Valid values are TRUE and FALSE.

Type: Boolean

Required: No

CompressionType

An optional parameter to use GZIP to compress the target files. Set to GZIP to compress the target files. Set to NONE (the default) or do not use to leave the files uncompressed. Applies to both CSV and PARQUET data formats.

Type: String

Valid Values: none | gzip

Required: No

CsvDelimiter

The delimiter used to separate columns in the source files. The default is a comma.

Type: String

Required: No

CsvRowDelimiter

The delimiter used to separate rows in the source files. The default is a carriage return (\n).

Type: String

Required: No

DataFormat

The format of the data which you want to use for output. You can choose one of the following:

  • CSV : This is a row-based format with comma-separated values.

  • PARQUET : Apache Parquet is a columnar storage format that features efficient compression and provides faster query response.

Type: String

Valid Values: csv | parquet

Required: No

DataPageSize

The size of one data page in bytes. Defaults to 1024 * 1024 bytes (1MiB). For PARQUET format only.

Type: Integer

Required: No

DictPageSizeLimit

The maximum size of an encoded dictionary page of a column. If the dictionary page exceeds this, this column is stored using an encoding type of PLAIN. Defaults to 1024 * 1024 bytes (1MiB), the maximum size of a dictionary page before it reverts to PLAIN encoding. For PARQUET format only.

Type: Integer

Required: No

EnableStatistics

Enables statistics for Parquet pages and rowGroups. Choose TRUE to enable statistics, choose FALSE to disable. Statistics include NULL, DISTINCT, MAX, and MIN values. Defaults to TRUE. For PARQUET format only.

Type: Boolean

Required: No

EncodingType

The type of encoding you are using: RLE_DICTIONARY (default), PLAIN, or PLAIN_DICTIONARY.

  • RLE_DICTIONARY uses a combination of bit-packing and run-length encoding to store repeated values more efficiently.

  • PLAIN does not use encoding at all. Values are stored as they are.

  • PLAIN_DICTIONARY builds a dictionary of the values encountered in a given column. The dictionary is stored in a dictionary page for each column chunk.

Type: String

Valid Values: plain | plain-dictionary | rle-dictionary

Required: No

EncryptionMode

The type of server side encryption you want to use for your data. This is part of the endpoint settings or the extra connections attributes for Amazon S3. You can choose either SSE_S3 (default) or SSE_KMS. To use SSE_S3, you need an IAM role with permission to allow "arn:aws:s3:::dms-*" to use the following actions:

  • s3:CreateBucket

  • s3:ListBucket

  • s3:DeleteBucket

  • s3:GetBucketLocation

  • s3:GetObject

  • s3:PutObject

  • s3:DeleteObject

  • s3:GetObjectVersion

  • s3:GetBucketPolicy

  • s3:PutBucketPolicy

  • s3:DeleteBucketPolicy

Type: String

Valid Values: sse-s3 | sse-kms

Required: No

ExternalTableDefinition

The external table definition.

Type: String

Required: No

ParquetVersion

The version of Apache Parquet format you want to use: PARQUET_1_0 (default) or PARQUET_2_0.

Type: String

Valid Values: parquet-1-0 | parquet-2-0

Required: No

RowGroupLength

The number of rows in a row group. A smaller row group size provides faster reads. But as the number of row groups grows, the slower writes become. Defaults to 10,000 (ten thousand) rows. For PARQUET format only.

If you choose a value larger than the maximum, RowGroupLength is set to the max row group length in bytes (64 * 1024 * 1024).

Type: Integer

Required: No

ServerSideEncryptionKmsKeyId

If you are using SSE_KMS for the EncryptionMode, provide the KMS Key ID. The key you use needs an attached policy that enables IAM user permissions and allows use of the key.

Here is a CLI example: aws dms create-endpoint --endpoint-identifier <value> --endpoint-type target --engine-name s3 --s3-settings ServiceAccessRoleArn=<value>,BucketFolder=<value>,BucketName=<value>,EncryptionMode=SSE_KMS,ServerSideEncryptionKmsKeyId=<value>

Type: String

Required: No

ServiceAccessRoleArn

The Amazon Resource Name (ARN) used by the service access IAM role.

Type: String

Required: No

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

On this page: