This section provides information on how to enable  connectivity and create one or more connections to  sources. 



Prerequisites

Before you begin, please verify that your  meets the following requirements:

NOTE: If you are connecting to any relational source of data, such as or , you must add the to your whitelist for those resources.


Tip: If the credentials used to connect to S3 do not provide access to Redshift, you can create an independent IAM role to provide access from to S3. If this separate role is available, the connection uses it instead. There may be security considerations.


Permissions

Access to  requires:

If the credentials used to connect to S3 do not provide access to , you can create an independent IAM role to provide access from  to S3. If this separate role is available, the  connection uses it instead. 

NOTE: There may be security considerations with using an independent role to govern this capability.

Steps:

  1. The IAM role must contain the required S3 permissions. See Required AWS Account Permissions.
  2. The  cluster should be assigned this IAM role. For more information, see https://docs.aws.amazon.com/redshift/latest/mgmt/authorizing-redshift-service.html.

Limitations


Create Connection

You can create  connections through the following methods.

Tip: SSL connections are recommended. Details are below.

Create through application

Any user can create a Redshift connection through the application.

Steps:

  1. Login to the application.
  2. In the menu, click the Connections icon.
  3. In the Create Connection page, click the  connection card.
  4. Specify the properties for your  database connection:

    PropertyDescription
    Host

    Hostname of the cluster

    NOTE: This value must be the full hostname of the cluster, which may include region information.

    Port

    Port number used to access the cluster. Default is 5439.

    Connect String OptionsPlease insert any connection options as a string here. See below.
    Database

    The database to which to connect on the cluster

    Credential Type

    Options: Basic authentication with optional IAM role ARN: Basic authentication credentials specified in this window are used to connect to the database. Additional permissions may be governed by any ARN specified in the IAM role used for the account. Use this option if you are planning to specify a database username/password combination as part of the connection. IAM Role: Connection to is governed by the IAM role associated with the user's account.

    Username

    Username with which to connect to the database

    Password

    Password associated with the username

    IAM Role ARN for Redshift/S3 connectivity

    (Optional) You can specify an IAM role ARN that enables role-based connectivity between and the S3 bucket that is used as intermediate storage during bulk COPY/UNLOAD operations. Example:

    arn:aws:iam::1234567890:role/MyRedshiftRole



    For more information on the other options, see Create Connection Window.

  5. Click Save

Enable SSL connections

To enable SSL connections to , you must enable them first on your  cluster. For more information, see https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-ssl-support.html.

In your connection to , please add the following string to your Connect String Options:

;ssl=true

Save your changes.

Connection URL

The properties that you provide are inserted into the following URL, which connects  to the connection:

jdbc:redshift://<host>:<port>/<database><connect-string-options>

Connect string options

The connect string options are optional. If you are passing additional properties and values to complete the connection, the connect string options must be structured in the following manner:

;<prop1>=<val1>&<prop2>=<val2>;...

where:

Delimiters:

Example

Access through AWS key-secret

The following example connection URL uses an AWS key/secret combination (IAM user) to access :

jdbc:redshift:iam://<redshift_clustername:region_name>:<port_number>/<database_name>?AccessKeyID=<access_key_value>&SecretAccessKey=<secret_key_value>&DBUser=<database_user_name>

where:

Access through IAM role and temporary credentials

The following example connection URL uses an AWS/Key secret combination using temporary credentials:

jdbc:redshift:iam://<redshift_clustername:region_name>:<port_number>/<database_name>?AccessKeyID=<access_key_value>&SecretAccessKey=<secret_key_value>&SessionToken=<session_token>&DBUser=<database_user_name>

where:

Driver Information

This connection uses the following driver:


API: API Reference

Troubleshooting

For more information, see https://docs.aws.amazon.com/redshift/latest/mgmt/troubleshooting-connections.html.

Testing

Import a dataset from . Add it to a flow, and specify a publishing action. Run a job.

NOTE: When publishing to through the Publishing dialog, output must be in Avro or JSON format. This limitation does not apply to direct writing to .


Using Redshift Connections

Uses of Redshift

 can use Redshift for the following tasks:

  1. Create datasets by reading from Redshift tables.
  2. Write to Redshift tables with your job results.

  3. Ad-hoc publication of data to Redshift.

Before you begin using Redshift

Secure access

SSL is required.

Storing data in Redshift

Your Redshift administrator should provide database access for storing datasets. Users should know where shared data is located and where personal data can be saved without interfering with or confusing other users. 

NOTE: does not modify source data in Redshift. Datasets sourced from Redshift are read without modification from their source locations.

Reading from Redshift

You can create a  from a table or view stored in Redshift.

NOTE: The Redshift cluster must be in the same region as the default S3 bucket.

NOTE: If a Redshift connection has an invalid iamRoleArn, you can browse, import datasets, and open the data in the Transformer page. However, any jobs executed using this connection fail. If the iamRoleArn is invalid, the only samples that you can generate are Quick Random samples; other sampling jobs fail.

For more information, see Database Browser.

Writing to Redshift

NOTE: You cannot publish to a Redshift database that is empty. The database must contain at least one table.

You can write back data to Redshift using one of the following methods:

Data Validation issues:

Reference

Supported Versions:  n/a