[−][src]Struct rusoto_dms::S3Settings
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 INSERT
s 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:
-
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.
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
.
-
RLEDICTIONARY
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. -
PLAINDICTIONARY
builds a dictionary of the values encountered in a given column. The dictionary is stored in a dictionary page for each column chunk.
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:
-
s3:CreateBucket
-
s3:ListBucket
-
s3:DeleteBucket
-
s3:GetBucketLocation
-
s3:GetObject
-
s3:PutObject
-
s3:DeleteObject
-
s3:GetObjectVersion
-
s3:GetBucketPolicy
-
s3:PutBucketPolicy
-
s3:DeleteBucketPolicy
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]
fn eq(&self, other: &S3Settings) -> bool
[src]
fn ne(&self, other: &S3Settings) -> bool
[src]
impl Default for S3Settings
[src]
fn default() -> S3Settings
[src]
impl Clone for S3Settings
[src]
fn clone(&self) -> 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]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl<'de> Deserialize<'de> for S3Settings
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
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]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>,
[src]
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> Erased for T
impl<T> Same for T
type Output = T
Should always be Self