[][src]Struct rusoto_dms::S3Settings

pub struct S3Settings {
    pub bucket_folder: Option<String>,
    pub bucket_name: Option<String>,
    pub cdc_inserts_only: Option<bool>,
    pub compression_type: Option<String>,
    pub csv_delimiter: Option<String>,
    pub csv_row_delimiter: Option<String>,
    pub data_format: Option<String>,
    pub data_page_size: Option<i64>,
    pub dict_page_size_limit: Option<i64>,
    pub enable_statistics: Option<bool>,
    pub encoding_type: Option<String>,
    pub encryption_mode: Option<String>,
    pub external_table_definition: Option<String>,
    pub parquet_version: Option<String>,
    pub row_group_length: Option<i64>,
    pub server_side_encryption_kms_key_id: Option<String>,
    pub service_access_role_arn: Option<String>,
}

Settings for exporting data to Amazon S3.

Fields

bucket_folder: Option<String>

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>/.

bucket_name: Option<String>

The name of the S3 bucket.

cdc_inserts_only: Option<bool>

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.

compression_type: Option<String>

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.

csv_delimiter: Option<String>

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

csv_row_delimiter: Option<String>

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

data_format: Option<String>

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

data_page_size: Option<i64>

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

dict_page_size_limit: Option<i64>

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.

enable_statistics: Option<bool>

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.

encoding_type: Option<String>

The type of encoding you are using: RLEDICTIONARY (default), PLAIN, or PLAINDICTIONARY.

encryption_mode: Option<String>

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 SSES3 (default) or SSEKMS. To use SSE_S3, you need an IAM role with permission to allow "arn:aws:s3:::dms-*" to use the following actions:

external_table_definition: Option<String>

The external table definition.

parquet_version: Option<String>

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

row_group_length: Option<i64>

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).

server_side_encryption_kms_key_id: Option<String>

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>

service_access_role_arn: Option<String>

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

Trait Implementations

impl PartialEq<S3Settings> for S3Settings[src]

impl Default for S3Settings[src]

impl Clone for S3Settings[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for S3Settings[src]

impl Serialize for S3Settings[src]

impl<'de> Deserialize<'de> for S3Settings[src]

Auto Trait Implementations

impl Send for S3Settings

impl Sync for S3Settings

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Erased for T

impl<T> Same for T

type Output = T

Should always be Self