How to Connect Informatica to Snowflake

The Snowflake Data Coud and Informatica are two industry leaders in cloud computing. Utilizing the Snowflake data platform along with Informatica cloud data management allows organizations to reduce costs while increasing operational efficiencies. 

Additionally, Informatica provides a complete self-service ecosystem to easily get everything you can out of Snowflake. 

In this blog, we’re going to explore the various ways to connect Informatica to Snowflake, including some tips on making the connection go smoothly.

What is Informatica Cloud?

Informatica Cloud is a cloud data management platform encompassing many Software as a Service (SaaS) solutions. These solutions range from Extract, Transform and Load (ETL) jobs to Self-service Analytics, Data Governance, and more. 

Informatica is ideal for businesses looking for a complete platform provided by just one vendor.

What is Snowflake?

Snowflake is a data warehouse built completely for and in the cloud. You can set up Snowflake in Amazon Web Services, Microsoft Azure, or Google Cloud platform. 

Snowflake is a versatile data platform that allows for storage and computing to be scaled independently to meet the needs of the user.

How to Connect Informatica to Snowflake

We assume you already have an Informatica Cloud account and have a basic understanding of its user interface. If that’s not true, Informatica has some great documentation on how to get started.

Installing the Snowflake Connector

Informatica does not automatically include all extensions by default to keep the options minimal when creating connections. To connect to Snowflake, you must first install the Informatica for Snowflake Data Cloud connector. This extension is included in a 30-day free trial by Informatica. It can be added by using the following steps:

  1. Navigate to Administrator on the Informatica Cloud My Services page
  2. In the left pane, select Add-On Connectors
  3. In the top right corner, use the search box to search for “Snowflake”
  4. In the Informatica for Snowflake Data Cloud Box press the Start Free Trial button

At this point, the Snowflake connect has been installed to your cloud workspace and can be utilized immediately.

Adding a New Snowflake Connection

Now we are ready to create our new connection. Start by navigating back to the Administrator service. In the left pane, navigate to Connections and press the New Connection button in the upper right corner of the page.

Give your new connection a name in the Connection Name field and choose “Snowflake Data Cloud (Informatica Cloud)” as the Type.

A screenshot that has a drop down menu with "Snowflake Data Cloud (Informatica Cloud) selected

Choosing the type will bring up fields for the rest of the connection settings required:

  • Runtime Environment: Name of the runtime environment to be used to run tasks. Can be a Secure Agent, Hosted Agent, or serverless runtime environment.
  • Authentication: Authentication method to be used. There are three choices:
    • Standard
      • Standard Snowflake connection using username and password
    • AuthenticationCode
      • OAuth 2.0 Authorization code authentication
    • KeyPair
      • Authentication using a private key file to access Snowflake
    • Choosing a method from the drop down will display the individualized connection properties needed.
    • Shared Connection Properties between all three methods:
      • Account: Snowflake account name. It is the first segment of the domain of the Snowflake URL along with the cloud provider and region. Example:
        • Snowflake URL: http://abc123.us-east-1.aws.snowflakecomputing.com
        • Account name: abc123.us-east-1.aws
      • Warehouse: Snowflake warehouse to be used by the connection, can be found in the Snowflake UI under the Warehouses menu
      • Additional JDBC URL Paramenters (Optional): Any additional JDBC connection parameters required
    • Standard
      • Username: Username to connect to the Snowflake account
      • Password: Password to connect to the Snowflake account
      • Role (Optional): Role to be used to connect to the Snowflake Account, if left blank, the default role for the user with be utilized
A pop up menu titled, "Connection Section" with several lines of options
    • Authorization Code
      • Authorization URL: Authorization server URL used to get the authorization code.
        • Example: http://abc123.us-east-1.aws.snowflakecomputing.com/oauth/authorize
      • Access Token URL: Access token URL used to exchange the authorization code for the access token.
        • Example: http://abc123.us-east-1.aws.snowflakecomputing.com/oauth/token-request
      • Client ID: Client identifier issued to the client during the application registration.
      • Client Secret:Client secret issued to the client during the application registration.
      • Scope (Optional): Scope(s) required in the access request, separated by a space.
        • Used for access control only if the API endpoint has custom scopes defined
      • Access Token Parameters (Optional): Additional parameters as required for the access token in JSON format.
      • Authorization Code Parameters (Optional): Additional parameters as required for the authorization code in JSON format/
      • Access Token:  Access token granted by Snowflake for the specific role to be used.
      • Refresh Token: Refresh token to be used to gain a new access token.
Another pop up menu with several fields filled out
    • Key Pair
      • Username: Username to connect to the account.
      • Private Key File: Path to primary key file, including the private key file name that the Secure Agent will access Snowflake with.
      • Private Key File Password (Optional): Password for primary key file.
A final popup menu with several fields filled out

Once you have entered all the connection information, press the Test Connection button in the top right corner of the page. If a green success method appears, your connection test was successful. Press the Save button and your connection is complete!

3 Tips

  • If you are not familiar with connecting to Snowflake or what credentials to provide, contact your Snowflake administrator and they should be able to provide you with the necessary information
  • If you are unsuccessful at connecting, contact your Snowflake administrator to check if a network policy is enabled within Snowflake. If so, the administrator will have to whitelist the IP addresses here to allow Informatica to connect to Snowflake.
  • Instead of using a personal username and password, a service account user and role should be created for Informatica to use and take the human element out of the equation.

Conclusion

Modernizing an organization’s data stack should be a top priority as it can not only improve efficiencies but also reduce costs. Some new technologies can seem a bit daunting to new users, however, rest assured that Informatica Cloud provides an easy-to-use ecosystem. 

If your data is stored in Snowflake, using Informatica to connect to it is simple by utilizing the Snowflake Data Platform connector. Users can connect to Snowflake in a matter of minutes. Once the connection is successfully established, users have dozens of Informatica solutions at their fingertips!

Looking for help modernizing your data stack?

The experts at phData can help! From Data Engineering projects to Cloud-Migrations, phData helps organizations make more data-driven decisions. Reach out today to learn more!

Accelerate and automate your data projects with the phData Toolkit

Data Coach is our premium analytics training program with one-on-one coaching from renowned experts.