Struct aws_sdk_databasemigration::model::RedshiftSettings [−][src]
#[non_exhaustive]pub struct RedshiftSettings {Show 30 fields
pub accept_any_date: Option<bool>,
pub after_connect_script: Option<String>,
pub bucket_folder: Option<String>,
pub bucket_name: Option<String>,
pub case_sensitive_names: Option<bool>,
pub comp_update: Option<bool>,
pub connection_timeout: Option<i32>,
pub database_name: Option<String>,
pub date_format: Option<String>,
pub empty_as_null: Option<bool>,
pub encryption_mode: Option<EncryptionModeValue>,
pub explicit_ids: Option<bool>,
pub file_transfer_upload_streams: Option<i32>,
pub load_timeout: Option<i32>,
pub max_file_size: Option<i32>,
pub password: Option<String>,
pub port: Option<i32>,
pub remove_quotes: Option<bool>,
pub replace_invalid_chars: Option<String>,
pub replace_chars: Option<String>,
pub server_name: Option<String>,
pub service_access_role_arn: Option<String>,
pub server_side_encryption_kms_key_id: Option<String>,
pub time_format: Option<String>,
pub trim_blanks: Option<bool>,
pub truncate_columns: Option<bool>,
pub username: Option<String>,
pub write_buffer_size: Option<i32>,
pub secrets_manager_access_role_arn: Option<String>,
pub secrets_manager_secret_id: Option<String>,
}
Expand description
Provides information that defines an Amazon Redshift endpoint.
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.accept_any_date: Option<bool>
A value that indicates to allow any date format, including invalid formats such as
00/00/00 00:00:00, to be loaded without generating an error. You can choose
true
or false
(the default).
This parameter applies only to TIMESTAMP and DATE columns. Always use ACCEPTANYDATE with the DATEFORMAT parameter. If the date format for the data doesn't match the DATEFORMAT specification, Amazon Redshift inserts a NULL value into that field.
after_connect_script: Option<String>
Code to run after connecting. This parameter should contain the code itself, not the name of a file containing the code.
bucket_folder: Option<String>
An S3 folder where the comma-separated-value (.csv) files are stored before being uploaded to the target Redshift cluster.
For full load mode, DMS converts source records into .csv files and loads them to
the BucketFolder/TableID path. DMS uses the Redshift
COPY
command to upload the .csv files to the target table. The files are
deleted once the COPY
operation has finished. For more information, see COPY in the
Amazon Redshift Database Developer Guide.
For change-data-capture (CDC) mode, DMS creates a NetChanges table, and loads the .csv files to this BucketFolder/NetChangesTableID path.
bucket_name: Option<String>
The name of the intermediate S3 bucket used to store .csv files before uploading data to Redshift.
case_sensitive_names: Option<bool>
If Amazon Redshift is configured to support case sensitive schema names, set
CaseSensitiveNames
to true
. The default is
false
.
comp_update: Option<bool>
If you set CompUpdate
to true
Amazon Redshift applies
automatic compression if the table is empty. This applies even if the table columns already
have encodings other than RAW
. If you set CompUpdate
to
false
, automatic compression is disabled and existing column encodings
aren't changed. The default is true
.
connection_timeout: Option<i32>
A value that sets the amount of time to wait (in milliseconds) before timing out, beginning from when you initially establish a connection.
database_name: Option<String>
The name of the Amazon Redshift data warehouse (service) that you are working with.
date_format: Option<String>
The date format that you are using. Valid values are auto
(case-sensitive),
your date format string enclosed in quotes, or NULL. If this parameter is left unset
(NULL), it defaults to a format of 'YYYY-MM-DD'. Using auto
recognizes most
strings, even some that aren't supported when you use a date format string.
If your date and time values use formats different from each other, set this to
auto
.
empty_as_null: Option<bool>
A value that specifies whether DMS should migrate empty CHAR and VARCHAR fields as
NULL. A value of true
sets empty CHAR and VARCHAR fields to null. The default
is false
.
encryption_mode: Option<EncryptionModeValue>
The type of server-side encryption that you want to use for your data. This encryption
type is part of the endpoint settings or the extra connections attributes for Amazon S3.
You can choose either SSE_S3
(the default) or SSE_KMS
.
For the ModifyEndpoint
operation, you can change the existing value of the
EncryptionMode
parameter from SSE_KMS
to
SSE_S3
. But you can’t change the existing value from SSE_S3
to SSE_KMS
.
To use SSE_S3
, create an Identity and Access Management (IAM) role with
a policy that allows "arn:aws:s3:::*"
to use the following actions:
"s3:PutObject", "s3:ListBucket"
explicit_ids: Option<bool>
This setting is only valid for a full-load migration task. Set ExplicitIds
to true
to have tables with IDENTITY
columns override their
auto-generated values with explicit values loaded from the source data files used to
populate the tables. The default is false
.
file_transfer_upload_streams: Option<i32>
The number of threads used to upload a single file. This parameter accepts a value from 1 through 64. It defaults to 10.
The number of parallel streams used to upload a single .csv file to an S3 bucket using S3 Multipart Upload. For more information, see Multipart upload overview.
FileTransferUploadStreams
accepts a value from 1 through 64. It
defaults to 10.
load_timeout: Option<i32>
The amount of time to wait (in milliseconds) before timing out of operations performed by DMS on a Redshift cluster, such as Redshift COPY, INSERT, DELETE, and UPDATE.
max_file_size: Option<i32>
The maximum size (in KB) of any .csv file used to load data on an S3 bucket and transfer data to Amazon Redshift. It defaults to 1048576KB (1 GB).
password: Option<String>
The password for the user named in the username
property.
port: Option<i32>
The port number for Amazon Redshift. The default value is 5439.
remove_quotes: Option<bool>
A value that specifies to remove surrounding quotation marks from strings in the
incoming data. All characters within the quotation marks, including delimiters, are
retained. Choose true
to remove quotation marks. The default is
false
.
replace_invalid_chars: Option<String>
A list of characters that you want to replace. Use with
ReplaceChars
.
replace_chars: Option<String>
A value that specifies to replaces the invalid characters specified in
ReplaceInvalidChars
, substituting the specified characters instead. The
default is "?"
.
server_name: Option<String>
The name of the Amazon Redshift cluster you are using.
service_access_role_arn: Option<String>
The Amazon Resource Name (ARN) of the IAM role that has access to the Amazon Redshift
service. The role must allow the iam:PassRole
action.
server_side_encryption_kms_key_id: Option<String>
The KMS key ID. If you are using SSE_KMS
for the EncryptionMode
,
provide this key ID. The key that you use needs an attached policy that enables IAM user
permissions and allows use of the key.
time_format: Option<String>
The time format that you want to use. Valid values are auto
(case-sensitive), 'timeformat_string'
, 'epochsecs'
, or
'epochmillisecs'
. It defaults to 10. Using auto
recognizes
most strings, even some that aren't supported when you use a time format string.
If your date and time values use formats different from each other, set this parameter
to auto
.
trim_blanks: Option<bool>
A value that specifies to remove the trailing white space characters from a VARCHAR
string. This parameter applies only to columns with a VARCHAR data type. Choose
true
to remove unneeded white space. The default is
false
.
truncate_columns: Option<bool>
A value that specifies to truncate data in columns to the appropriate number of
characters, so that the data fits in the column. This parameter applies only to columns
with a VARCHAR or CHAR data type, and rows with a size of 4 MB or less. Choose
true
to truncate data. The default is false
.
username: Option<String>
An Amazon Redshift user name for a registered user.
write_buffer_size: Option<i32>
The size (in KB) of the in-memory file write buffer used when generating .csv files on the local disk at the DMS replication instance. The default value is 1000 (buffer size is 1000KB).
secrets_manager_access_role_arn: Option<String>
The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the
trusted entity and grants the required permissions to access the value in
SecretsManagerSecret
. The role must allow the iam:PassRole
action.
SecretsManagerSecret
has the value of the Amazon Web Services Secrets Manager secret that allows access to the Amazon Redshift endpoint.
You can specify one of two sets of values for these permissions. You can specify the
values for this setting and SecretsManagerSecretId
. Or you can specify
clear-text values for UserName
, Password
,
ServerName
, and Port
. You can't specify both. For more
information on creating this SecretsManagerSecret
and the
SecretsManagerAccessRoleArn
and SecretsManagerSecretId
required to access it, see Using secrets to access Database Migration Service
resources in the Database Migration Service User
Guide.
secrets_manager_secret_id: Option<String>
The full ARN, partial ARN, or friendly name of the SecretsManagerSecret
that contains the Amazon Redshift endpoint connection details.
Implementations
A value that indicates to allow any date format, including invalid formats such as
00/00/00 00:00:00, to be loaded without generating an error. You can choose
true
or false
(the default).
This parameter applies only to TIMESTAMP and DATE columns. Always use ACCEPTANYDATE with the DATEFORMAT parameter. If the date format for the data doesn't match the DATEFORMAT specification, Amazon Redshift inserts a NULL value into that field.
Code to run after connecting. This parameter should contain the code itself, not the name of a file containing the code.
An S3 folder where the comma-separated-value (.csv) files are stored before being uploaded to the target Redshift cluster.
For full load mode, DMS converts source records into .csv files and loads them to
the BucketFolder/TableID path. DMS uses the Redshift
COPY
command to upload the .csv files to the target table. The files are
deleted once the COPY
operation has finished. For more information, see COPY in the
Amazon Redshift Database Developer Guide.
For change-data-capture (CDC) mode, DMS creates a NetChanges table, and loads the .csv files to this BucketFolder/NetChangesTableID path.
The name of the intermediate S3 bucket used to store .csv files before uploading data to Redshift.
If Amazon Redshift is configured to support case sensitive schema names, set
CaseSensitiveNames
to true
. The default is
false
.
If you set CompUpdate
to true
Amazon Redshift applies
automatic compression if the table is empty. This applies even if the table columns already
have encodings other than RAW
. If you set CompUpdate
to
false
, automatic compression is disabled and existing column encodings
aren't changed. The default is true
.
A value that sets the amount of time to wait (in milliseconds) before timing out, beginning from when you initially establish a connection.
The name of the Amazon Redshift data warehouse (service) that you are working with.
The date format that you are using. Valid values are auto
(case-sensitive),
your date format string enclosed in quotes, or NULL. If this parameter is left unset
(NULL), it defaults to a format of 'YYYY-MM-DD'. Using auto
recognizes most
strings, even some that aren't supported when you use a date format string.
If your date and time values use formats different from each other, set this to
auto
.
A value that specifies whether DMS should migrate empty CHAR and VARCHAR fields as
NULL. A value of true
sets empty CHAR and VARCHAR fields to null. The default
is false
.
The type of server-side encryption that you want to use for your data. This encryption
type is part of the endpoint settings or the extra connections attributes for Amazon S3.
You can choose either SSE_S3
(the default) or SSE_KMS
.
For the ModifyEndpoint
operation, you can change the existing value of the
EncryptionMode
parameter from SSE_KMS
to
SSE_S3
. But you can’t change the existing value from SSE_S3
to SSE_KMS
.
To use SSE_S3
, create an Identity and Access Management (IAM) role with
a policy that allows "arn:aws:s3:::*"
to use the following actions:
"s3:PutObject", "s3:ListBucket"
This setting is only valid for a full-load migration task. Set ExplicitIds
to true
to have tables with IDENTITY
columns override their
auto-generated values with explicit values loaded from the source data files used to
populate the tables. The default is false
.
The number of threads used to upload a single file. This parameter accepts a value from 1 through 64. It defaults to 10.
The number of parallel streams used to upload a single .csv file to an S3 bucket using S3 Multipart Upload. For more information, see Multipart upload overview.
FileTransferUploadStreams
accepts a value from 1 through 64. It
defaults to 10.
The amount of time to wait (in milliseconds) before timing out of operations performed by DMS on a Redshift cluster, such as Redshift COPY, INSERT, DELETE, and UPDATE.
The maximum size (in KB) of any .csv file used to load data on an S3 bucket and transfer data to Amazon Redshift. It defaults to 1048576KB (1 GB).
The password for the user named in the username
property.
The port number for Amazon Redshift. The default value is 5439.
A value that specifies to remove surrounding quotation marks from strings in the
incoming data. All characters within the quotation marks, including delimiters, are
retained. Choose true
to remove quotation marks. The default is
false
.
A list of characters that you want to replace. Use with
ReplaceChars
.
A value that specifies to replaces the invalid characters specified in
ReplaceInvalidChars
, substituting the specified characters instead. The
default is "?"
.
The name of the Amazon Redshift cluster you are using.
The Amazon Resource Name (ARN) of the IAM role that has access to the Amazon Redshift
service. The role must allow the iam:PassRole
action.
The KMS key ID. If you are using SSE_KMS
for the EncryptionMode
,
provide this key ID. The key that you use needs an attached policy that enables IAM user
permissions and allows use of the key.
The time format that you want to use. Valid values are auto
(case-sensitive), 'timeformat_string'
, 'epochsecs'
, or
'epochmillisecs'
. It defaults to 10. Using auto
recognizes
most strings, even some that aren't supported when you use a time format string.
If your date and time values use formats different from each other, set this parameter
to auto
.
A value that specifies to remove the trailing white space characters from a VARCHAR
string. This parameter applies only to columns with a VARCHAR data type. Choose
true
to remove unneeded white space. The default is
false
.
A value that specifies to truncate data in columns to the appropriate number of
characters, so that the data fits in the column. This parameter applies only to columns
with a VARCHAR or CHAR data type, and rows with a size of 4 MB or less. Choose
true
to truncate data. The default is false
.
The size (in KB) of the in-memory file write buffer used when generating .csv files on the local disk at the DMS replication instance. The default value is 1000 (buffer size is 1000KB).
The full Amazon Resource Name (ARN) of the IAM role that specifies DMS as the
trusted entity and grants the required permissions to access the value in
SecretsManagerSecret
. The role must allow the iam:PassRole
action.
SecretsManagerSecret
has the value of the Amazon Web Services Secrets Manager secret that allows access to the Amazon Redshift endpoint.
You can specify one of two sets of values for these permissions. You can specify the
values for this setting and SecretsManagerSecretId
. Or you can specify
clear-text values for UserName
, Password
,
ServerName
, and Port
. You can't specify both. For more
information on creating this SecretsManagerSecret
and the
SecretsManagerAccessRoleArn
and SecretsManagerSecretId
required to access it, see Using secrets to access Database Migration Service
resources in the Database Migration Service User
Guide.
The full ARN, partial ARN, or friendly name of the SecretsManagerSecret
that contains the Amazon Redshift endpoint connection details.
Creates a new builder-style object to manufacture RedshiftSettings
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for RedshiftSettings
impl Send for RedshiftSettings
impl Sync for RedshiftSettings
impl Unpin for RedshiftSettings
impl UnwindSafe for RedshiftSettings
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more