Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this article

Table of Contents
maxLevel2
absoluteUrltrue

Overview

Use this account type to connect Redshift Snaps with data sources that use Redshift Cross-Account IAM Role Account. The Redshift Snaps support both Redshift Cluster and Redshift Serverless accounts.

Prerequisites

Access to the following folders:

  • Private project folder

  • Project Space’s shared folder

  • Global shared folder

Limitations

None.

Known Issues

None.

Account Settings

Image Removed

...

Multiexcerpt include macro
nameIAM Role
templateDataeJyLjgUAARUAuQ==
pageRedshift Snap Pack
addpanelfalse

Multiexcerpt include macro
nameRedshift limitation with PostgreSQL driver
templateData[]
pageRedshift - Execute
addpanelfalse

Known Issues

None.

Account Settings

...

Enter the JDBC

Field Name

Field Type

Description

Label*

Default Value: None
Example:Redshift Cross-Account IAM Role Account

String

Specify a unique label for the account.

N/ARedshift_Cross_IAM_AccountJDBC Driver Class

String

JDBC Driver Class

Default Value: com.amazon.redshift.jdbc42.Driver
Example:org.postgresql.Driver

String/Expression

Name of the JBDC driver class to use

in your application.org.postgresql.Driverorg.postgresql.DriverJDBC JARsSpecify or upload the JDBC JAR files that you want to use.

. By default, the com.amazon.redshift.jdbc42.Driver class is bundled with the Snap Pack.

JDBC JARs

Default Value: N/A

String/Expression

Specify a list of JDBC JAR files to be loaded.

You can upload the Redshift driver(s) that can override the default 

org

com.

postgresql

amazon.

Driver driver. Set the Batch size value to 1 with the JDBC driver version RedshiftJDBC41-1.1.10.1010.jar. Specify each JDBC Driver as a separate row. Click Image Removed to add a new row. We recommend, RedshiftJDBC42-1.2.10.1009.jar version when using Redshift Bulk Upsert Snap in your Pipeline.JDBC DriverString

Select the JDBC driver to use. 

Note

Default JDBC driver will be used on leaving this field blank.

N/ANAJDBC UrlString

redshift.jdbc42.Driver.

JDBC URL

Default Value: N/A
Example: jdbc:redshift://hostname:port/database

String/Expression

Enter the URL of the JDBC database.

N/Ajdbc:redshift://hostname:port/databaseConfigure

Account properties

Required. 

Enter in the information

required

to

establish

create a

database

connection

with

to the

account

database.

Endpoint


String

Required. Enter the server's address to establish a connection.N

*

Default Value: N/A

fieldcluster.cvnsysusue7w2

Exampleexamplecluster.c8dwbwr9.us-east-1.redshift.

amazonaws

endpoint.com

String/Expression

Enter the server's address to connect to.

Port

number

Numeric

Required. Enter th

Number*

Default Value5439
Example5439

Integer/Expression

Enter the database server's port to connect

to the hostDatabase name

String

Required. Enter the database

.

54395476

Database name*

Default Value: N/A
Examplesnaplogic

String/Expression

Enter the database name to connect.

NUsername

Username

Default Value: N/A

weqter

Exampleredshiftadmin

String/Expression

Enter the username to connect to the database.

 Username is

 Username will be used as the default username when retrieving connections. The username must be valid in order to set up the data source.

NString

Password

Default Value: N/A

adminPassword

Examplep@$$20d*

String/Expression

Enter the password used to connect to the data source.

 Password is

 Password will be used as the default password when retrieving connections. The password must be valid in order to set up the data source.

N/A

S3 Bucket

Default Value: N/A

S3 Bucket

Examplesl-bucket-ca

String/Expression

Enter the external S3 Bucket

name residing

name residing in an external AWS account,

 to

 to use for staging data onto Redshift.

 

Note

This field is required when using Redshift Bulk Load, Redshift Bulk Upsert, Redshift S3 Upsert, and Redshift Unload Snaps. 

NS3 FolderString

S3 Folder

Default Value: N/A

sl-bucket-ca

Examples3://bucket-name/folder-name

String/Expression

Enter the relative path to a folder in S3 Bucket. This is used as a root folder for staging data onto Redshift.

NS3 Bucket RegionString

S3 Bucket Region

Default Value: N/A

s3://sl-bucket-ca/san-francisco

Exampleus-east-2

String/Expression

Enter the name of the region where the S3 bucket belongs.

note

This field is required if the Redshift cluster and the S3 bucket are in the different regions.

N/A

us-east-2

S3 Bucket Write IAM Role ARN

Default Value: N/A
Examplearn:aws:iam::123456789012:role/S3Access

String/Expression

Enter the IAM role to write to the S3 bucket which resides in either the same or different AWS account.

note

  • You need to have write and delete permissions in this role.

  • This

field is
  • field is required when

using Bulk
  • using Bulk load Snap (with input view data source), Bulk Upsert Snap, and Unload Snap.

NExternal IDString

External ID

Default Value: N/A

arn:aws:iam::133198801419:role/IamRoleWithAllAccessForCanary

Example7609567

String/Expression

Enter an optional external ID which is required by the role. This field is applicable only for streaming bulk load.

N/A7609567

IAM properties (Redshift Cluster)

Specify the IAM properties information for Redshift to communicate with IAM.

AWS account ID

Default Value: N/A
ExampleAWS-1

String/Expression

Enter the

ID of

ID of the Amazon Web

Services account to

Services account to be used for performing bulk load operation.

note

This field is required when using Redshift Bulk Load, Redshift Bulk Upsert, Redshift S3 Upsert, and Redshift Unload

Snaps.

N/A 

AWS1233961

Snaps if the IAM role checkbox is selected. 

IAM role name

Default Value: N/A
Example: rolex

String/Expression

Enter the name of the IAM

role associated with the target Redshift cluster to access the S3 bucket. redshift cluster

role that has been assigned to the Redshift cluster to access the S3 bucket provided above.

Note

This field is required when using Redshift Bulk Load, Redshift Bulk Upsert, Redshift S3 Upsert, and Redshift Unload

Snaps.N/Adas-crossaccount-sp6776

Snaps if the IAM role checkbox is selected. 

S3 Bucket Read IAM Role

Specify

the information

the information required to make Redshift work with IAM instead of Access-key ID and Secret.

IAM Role ARN

Default Value: N/A
Example: arn:aws:iam::123456789012:role/S3Access

String/Expression

Enter the ARN of the IAM role set on the above S3 bucket.

note

This field is required only if the S3 bucket is in another AWS account. If S3 bucket is in another AWS account, specify the Cross-Account IAM role to read the S3 bucket. Else, leave this field blank and ensure the IAM role assigned to the Redshift Cluster has permission to read from the S3 bucket. For more information, see Setup for Redshift Cross Account IAM Role

Setup

.

N/Aarn:aws:iam::133198801419:role/cross-account-access-snap6776-das

Advanced properties

Specify advanced properties to support this account.

Auto commit

Default ValueSelected

Checkbox

Select this check box to enable the Snap to commit offsets automatically as messages are consumed and sent to the output view

. If the Snap fails, only the batch being executed at that moment is rolled backBatch sizeNumericRequired. Enter the number

.

SelectedDeselected

Batch size*

Default Value50
Example50

Integer/Expression

Enter the number of statements to execute at a time

. NoteThis field is required when using Redshift Bulk Load, Redshift Bulk Upsert, Redshift S3 Upsert, and Redshift Unload Snaps. 

. Select queries are not batched.

User-defined types are not supported if a JDBC driver with a version other than 11.2.0.4.0 is set.

5070Fetch sizeNumericRequired. Enter the number

Fetch size*

Default Value:100
Example:100

Integer/Expression

Enter the number of rows to fetch at a time when executing a query.

Note

User-defined

types are

typesare not supported if a JDBC driver with a version other than 11.2.0.4.0 is set.

100

56

Max pool size

NumericRequired. Enter the maximum

*

Default Value50
Example30

Integer/Expression

Enter the maximum number of connections

that

a pool

maintains

will maintain at a time.

note

Redshift Bulk Load/Bulk Upsert/S3 Upsert Snap requires a minimum of

two

2 connections per Snap in a pipeline. For example, if a pipeline has a Redshift Bulk Load Snap and an S3 Upsert Snap, then the pool size must be greater than or equal to

four

4 for successful execution.

5010

Max life time

Numeric

Required.

*

Default Value30
Example10

Integer/Expression

Enter the maximum lifetime of a connection in the pool.

Note

Ensure that the value you enter is a few seconds

lesser

shorter than any database or infrastructure-imposed connection time limit. A value of 0 indicates an infinite lifetime, subject to the Idle Timeout value. An in-use connection is never retired. Connections are removed only after they are closed.

3015Idle Timeout

Numeric

Required.

Idle Timeout*

Default Value5
Example6

Integer/Expression

Enter the maximum amount of time a connection

that should remain

is allowed to sit idle in the pool. A value of 0 indicates that idle connections are never removed from the pool.

51Checkout timeoutNumeric
Required.

Checkout timeout*

Default Value:1000
Example800

Integer/Expression

Enter the number of milliseconds to wait for a connection to be available when the pool is exhausted.

A value of 0 indicates that the wait time to checkout is infinite. An exception is thrown after the wait time expires.10002000URL PropertiesSpecify

If you provide 0, the Snap waits infinitely until the connection is available. Therefore, we recommend you not to specify 0 for Checkout Timeout.

URL Properties

Use this field set to define the URL properties associated

to

with this account. This field set contains the following fields:

  • URL property name

Numeric
  • URL property value

Enter the

URL property name

.

Default Value: N/A

ssl

Example:

Integer/Expression

Enter the URL property name.

URL property value

Numeric

Default Value: N/A
Example:

Integer/Expression

Enter the URL property value.

N/Atrue

Account Encryption

Standard Encryption

If you are using Standard Encryption, the High sensitivity settings under Enhanced Encryption are followed.

Enhanced Encryption

If you have the Enhanced Account Encryption feature, the following describes which fields are encrypted for each sensitivity level selected per each account.

  • High: Password, S3 Access-key ID, S3 Secret key

  • Medium + High: Username, Password, S3 Access-key ID, S3 Secret key

  • Low + Medium + High: Endpoint, Database name, Username, Password, S3 Bucket, S3 Folder, S3 Access-key ID, S3 Secret key, URL property value

Troubleshooting

Error

Reason

Resolution

Error copying data from S3 to Redshift.

Redshift database user is unable to assume the IAM role.

If the Redshift cluster is in the same AWS account as the S3 bucket, remove the role ARN defined in the S3 Bucket Read IAM role field of the Redshift Cross Account and ensure the role attached to the Redshift cluster has the permission to read from the S3 bucket.

...

...

Insert excerpt
Redshift Snap Pack
Redshift Snap Pack
nopaneltrue

Related Content