How to Load Salesforce Data Into Snowflake in Minutes

salesforce snowflake flow

Companies using Salesforce know why it's arguably the best CRM on the market: it's flexible, it's customizable—it's a powerful system. It stores and generates a ton of data, but one thing it's not, is a data warehouse.

Snowflake is a popular option for many organizations that want to set up a cloud-based data warehouse, but how do you get all the data from Salesforce to Snowflake? Manually exporting, preparing, transforming, loading, etc., all of a company's CRM data is a complicated and time-intensive process—even for someone with data management experience. 

But there's an easier way.

Using your free 30-Day Free Talend Cloud Trial, follow this Salesforce-to-Snowflake tutorial to build your own flow get Salesforce data into Snowflake in minutes.  This how-to guide will help you access, extract, and filter data (Opportunities, Contacts, and Accounts) from Salesforce.com, and write filtered results to Snowflake. 

Prerequisites 

Setup

Snowflake Account Setup

You should already have a Snowflake Trial Account. Follow these steps to configure your Snowflake Trial Database to integrate with the example jobs:

  1. Follow Snowflake guidelines to create a new warehouse named TRIAL_WH and grant full privileges to the PUBLIC Role

.

Salesforce Account Setup

To utilize the features of this demo you will need to create a Salesforce Developer Account. This is a free account with no restrictions that contains sample Salesforce data that will be used for this demo. 

    1. To create a Salesforce Developer account, follow the below link and submit your information: https://developer.salesforce.com/signup
    2. Log in to your Salesforce Developer Account.
    3. We recommend switching to the Salesforce Classic View. The instructions are also relevant to the Lighting View.
    4. Create/Reset your personal security token by navigating to My Settings -> Personal -> Reset My Security Token.
    5. You will receive a new security token, sent to the email used during registration, that will allow you to access Salesforce from the Talend Jobs.

.

Talend Cloud Setup

Talend offers a FREE 30-day trial of Talend Cloud to start your cloud integrations. Included with the trial are examples of how you can use Talend Cloud to achieve your cloud integration strategies.

    1. Create Talend Cloud Trial Account for a FREE 30-day trial
    2. Log in to your Talend Cloud Account.

 

Salesforce to Snowflake Execution

Simple Execution (Using Talend Cloud)

salesforce-load

Image 1: Advanced – Snowflake Trial – Salesforce.com Load (Step 1 of 2)

salesforce load 2

Image 2: Advanced – Snowflake Trial – Salesforce.com Load (Step 2 of 2)

.

Salesforce Example

    1. Log in to Talend Cloud and locate the sample Salesforce Jobs in the Samples Pane.

        1. Advanced – Snowflake Trial – Salesforce.com Load (Step 1 of 2)
        2. Advanced – Snowflake Trial – Salesforce.com Load (Step 2 of 2)
          .
    2. Click on each example listed above to view more information about the job. When ready, import the sample job into your personal workspace by clicking on the Try It button.
      .
    3. When the jobs are imported into your workspace, you will be prompted to fill in the necessary connection information to connect to your account(s).
      .
      Connection NameParameters
      Snowflake 

      Account: <YourSnowflakeAccount>

      UserName: <YourSnowflakeUserName>

      Password: <YourSnowflakePassword>

      Warehouse: TRIAL_WH

      Schema: PUBLIC

      Database: SALESFORCE
      Salesforce

      Username: <YourSalesforceUserName>

      Password: <YourSalesforcePassword>

      Security Key: <YourSalesforceSecurityKey>
      .
    4. If you are not prompted to or need to modify your connection information at any time, you can follow the steps below:

          1. Navigate to “Manage” and “Connections” under your personal workspace.
          2. In Talend Cloud, click on the individual connections listed above and edit the connection parameters with the appropriate information based on your individual account(s). Save the changes.


            .
    5. Navigate to Flows on the Talend Cloud menu. In the Workspaces Pane, click on the Personal Folder and, from the listed flows on the right, choose the flow named Advanced – Snowflake Trial – Salesforce.com Load (Step 1 of 2). From this view you can review the Flow Description Information, Run the flow, and see the Flow’s Run History.


      .
    6. Click on Builder.  The Builder view will provide additional details, allowing you to change/update the Job that the flow executes.  You will also see the Parameters required to execute the job.


      .
    7. Click on Go Live. The Go Live view will ask for connection details.  Here, under the Snowflake Connection, specify the Snowflake connection from the dropdown.
      .
    8. From this view you can also select the Cloud Runtime and schedule the execution. Leave the default values and click Go.



      • This flow will execute and create the necessary Database and Tables in your Snowflake Trial Account necessary to load the Salesforce Data.
    9. When complete, check your Snowflake account to confirm the SALESFORCE Database and 3 Tables have been created.
      .
    10. Now, back in Talend Cloud, navigate back to the Flows view and select the Flow named Advanced – Snowflake Trial – Salesforce.com Load (Step 2 of 2). Again, review the Flow Description, Run Details and Run History.
      .
    11. Click on Builder and then Go Live.
      .
    12. Here you will need to specify 2 Connections (the two connections you configured earlier)
      .
        1. Salesforce Connection: Salesforce
        2. Snowflake Connection: Snowflake
      .
    13. Keep the default values in the Schedule Pane and click on Go.


      • This job will truncate any data in the Snowflake tables that were generated in the previous job before loading all the Opportunities data from Salesforce into Snowflake.
    14. You can confirm the data load by navigating to your Snowflake instance and see the data loaded from Salesforce.

| Last Updated: September 27th, 2018