Contact Us 1-800-596-4880

Using Anypoint Studio to Configure Amazon Redshift Connector 1.0 - Mule 4

Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files.

To add and configure a connector in Studio:

When you run the connector, you can view the app log to check for problems, as described in View the App Log.

If you are new to configuring connectors in Studio, see Using Anypoint Studio to Configure a Connector.

Create a Mule Project

In Studio, create a new Mule project in which to add and configure the connector:

  1. In Studio, select File > New > Mule Project.

  2. Enter a name for your Mule project and click Finish.

Add the Connector to Your Mule Project

Add Anypoint Connector for Amazon Redshift (Amazon Redshift Connector) to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s pom.xml file:

  1. In the Mule Palette view, click (X) Search in Exchange.

  2. In Add Modules to Project, type redshift in the search field.

  3. Click Amazon Redshift Connector in Available modules.

  4. Click Add.

  5. Click Finish.

Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace.

Configure a Source

A source initiates a flow when a specified condition is met. You can configure one of these sources to use with Amazon Redshift Connector:

  • On Table Row

    Select rows from a database table at a regular interval and generates one message per row that is obtained.

  • HTTP > Listener

    Initiates a flow each time it receives a request on the configured host and port

  • Scheduler

    Initiates a flow when a time-based condition is met

To configure the On Table Row source, follow these steps:

  1. In the Mule Palette view, select Redshift.

  2. Drag On Table Row to the Studio canvas.

  3. On the On Table Row properties window, optionally change the value of the Display Name field.

  4. Select the created connector configuration or click the plus sign (+) next to the *Connector configuration field to configure a new global element.

  5. On the General tab, complete the following fields:

Field Description

Name

Name used to reference this connector instance

Table

Name of the table to select from

Add a Connector Operation to the Flow

When you add a connector operation to your flow, you are specifying an action for that connector to perform.

To add an operation for <connector name>, follow these steps:

  1. In the Mule Palette view, select Amazon Redshift and then select the desired operation.

  2. Drag the operation onto the Studio canvas to the right of the source.

Configure a Global Element for the Connector

When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials that the connector requires to access the target Amazon Redshift cluster.

Amazon Redshift Connector supports:

  • Basic authentication, which uses user and password field values to connect to the database

  • IAM authentication, which uses access key and secret key field values to retrieve the temporary password for the specified user in order to connect to the database

  • Optionally, you can specify the ARN field value in the Role field if the connector should first assume an IAM role for a set of temporary security IAM credentials and use those to retrieve the password.

When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see Anypoint Connector Configuration.

To configure a global element, follow these steps:

  1. Select the name of the connector in the Studio canvas.

  2. In the configuration screen for the operation, click the plus sign (+) next to the Connector configuration field to access the global element configuration fields.

  3. On the General tab, configure the following fields (basic authentication configuration).

    Field Description

    Name

    Name used to reference the connector instance

    Cluster ID

    Cluster identifier

    Region

    Region Endpoint (optional)

    Port

    Database port (optional)

    Database

    Database name

    User

    Database username

    Password

    Password to use for authentication against the database

  4. Scroll down and configure the JDBC driver in the Required libraries section. You can choose to select Use local file, Add recommended library, or Add Maven dependency.

    If you try to select Add recommended library or Add Maven dependency and this doesn’t work, add the Amazon Maven repository to your pom.xml file and try again.

    <repositories>
    ...
        <repository>
            <id>redshift</id>
            <url>https://s3.amazonaws.com/redshift-maven-repository/release</url>
        </repository>
    </repositories>
  5. On the Advanced tab, optionally add JDBC connection properties and reconnection information, including a reconnection strategy.

  6. Click Test Connection to confirm that Mule can connect with the specified server.

  7. Click OK.

View the App Log

To check for problems, you can view the app log as follows:

  • If you’re running the app from Anypoint Platform, the app log output is visible in the Anypoint Studio console window.

  • If you’re running the app using Mule from the command line, the app log output is visible in your OS console.

Unless the log file path is customized in the app’s log file (log4j2.xml), you can also view the app log in the default location MULE_HOME/logs/<app-name>.log. You can configure the location of the log path in the app log file log4j2.xml.

Next Step

After you configure a global element and connection information, configure the other fields for the connector.

View on GitHub