VOOZH about

URL: https://www.cdata.com/kb/tech/salesforce-jdbc-dataiku.rst

⇱ Build AI/ML Models with Live Salesforce Data using Dataiku


Build AI/ML Models with Live Salesforce Data using Dataiku

πŸ‘ Dibyendu Datta
Dibyendu Datta
Lead Technology Evangelist
Connect Salesforce Data with Dataiku using the CData JDBC Driver for Salesforce.

Dataiku is a data science and machine learning platform used for data preparation, analysis, visualization, and AI/ML model deployment, enabling collaborative and efficient data-driven decision-making. When paired with the CData JDBC Driver for Salesforce, Dataiku enhances data integration, preparation, real-time analysis, and reliable model deployment for Salesforce data.

With built-in optimized data processing, the CData JDBC Driver offers unmatched performance for interacting with live Salesforce data. When you issue complex SQL queries to Salesforce, the driver pushes supported SQL operations, like filters and aggregations, directly to Salesforce and utilizes the embedded SQL engine to process unsupported operations client-side (often SQL functions and JOIN operations). Its built-in dynamic metadata querying allows you to work with and analyze Salesforce data using native data types.

This article shows how you can easily integrate to Salesforce using CData JDBC Driver for Salesforce in Dataiku DSS (Data Science Studio) platform, allowing you to prepare the data and build custom AI/ML models.

About Salesforce Data Integration

Accessing and integrating live data from Salesforce has never been easier with CData. Customers rely on CData connectivity to:

  • Access to custom entities and fields means Salesforce users get access to all of Salesforce.
  • Create atomic and batch update operations.
  • Read, write, update, and delete their Salesforce data.
  • Leverage the latest Salesforce features and functionalities with support for SOAP API versions 30.0.
  • See improved performance based on SOQL support to push complex queries down to Salesforce servers.
  • Use SQL stored procedures to perform actions like creating, retrieving, aborting, and deleting jobs, uploading and downloading attachments and documents, and more.

Users frequently integrate Salesforce data with:

  • other ERPs, marketing automation, HCMs, and more.
  • preferred data tools like Power BI, Tableau, Looker, and more.
  • databases and data warehouses.

For more information on how CData solutions work with Salesforce, check out our Salesforce integration page.


Getting Started


Preparing the Dataiku DSS environment

In this section, we will explore how to set up Dataiku, as previously introduced, with Salesforce data. Be sure to install Dataiku DSS (On-Prem version) for your preferred operating system, beforehand.

Install the CData JDBC Driver for Salesforce

First, install the CData JDBC Driver for Salesforce on the same machine as Dataiku. The JDBC Driver will be installed in the following path:

C:\Program Files\CData[product_name] 20xx\lib\cdata.jdbc.salesforce.jar

Connecting the JDBC Driver in Dataiku DSS

To use the CData JDBC driver in Dataiku, you must create a new SQL database connection and add the JDBC Driver JAR file in the DSS connection settings.

  1. Log into Dataiku DSS platform. It should open locally in your browser (e.g. localhost:11200) πŸ‘ Log into Dataiku DSS platform.
    πŸ‘ Dataiku DSS platform dashboard.
  2. Click on Navigate to other sections of Dataiku menu on the top right section of the platform and select Administration. πŸ‘ Select Administration.
  3. Select the Connections tab. πŸ‘ Select Connections.
  4. In Connections, click on New Connections button. πŸ‘ Click New Connections.
  5. Now, scroll down and select Other SQL databases. πŸ‘ Select Other SQL databases.
  6. Generate a JDBC URL for connecting to Salesforce, beginning with jdbc:salesforce: followed by a series of semicolon-separated connection string properties.

    There are several authentication methods available for connecting to Salesforce: OAuth, Login (or basic), and SSO. The Login method requires you to have the username, password, and security token of the user.

    OAuth Authentication (default)

    The default authentication mechanism (and the one preferred by Salesforce) is OAuth. To use OAuth with CData's embedded OAuth application, leave the connection properties blank. If you have configured your own custom OAuth application with Salesforce (see the Help documentation for more information), set OAuthClientId, OAuthClientSecret, and CallbackURL to the properties for you application. Set InitiateOAuth to the desired OAuth flow ("GETANDREFRESH" will have the connector manage the entire OAuth flow).

    Login (or Basic) Authentication

    If you do not wish do not wish to use OAuth authentication, you can use Login (or basic) authentication. Set AuthScheme to Basic, and set the User, Password, and SecurityToken properties. You can configure your security token in Salesforce.

    SSO (single sign-on) Authentication

    SSO (single sign-on) can be used by setting the SSOProperties, SSOLoginUrl, and SSOExchangeURL connection properties, which allow you to authenticate to an identity provider. See the "Getting Started" chapter in the Help documentation for more information.

    Multi-Factor Authentication (MFA)

    If your Salesforce org has MFA enforcement enabled, set MFACode to the time-based one-time passcode (TOTP) generated by your authenticator app (such as Salesforce Authenticator or Google Authenticator). MFACode applies to both OAuth and Login authentication flows.

    Built-in Connection String Designer

    For assistance in constructing the JDBC URL, use the connection string designer built into the Salesforce JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.

    java -jar cdata.jdbc.salesforce.jar
    

    Fill in the connection properties and copy the connection string to the clipboard.

    πŸ‘ Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)

    A typical JDBC URL is given below:

    jdbc:salesforce:InitiateOAuth=GETANDREFRESH;MFACode=YourMFACode
    
  7. On the New SQL database (JDBC) connection screen, enter a name in the New connection name field and specify the basic parameters:
    • JDBC Driver Class: cdata.jdbc.salesforce.SalesforceDriver
    • JDBC URL: JDBC connection URL obtained in the previous step
    • Driver jars directory: the folder path where the JAR file is installed on your system
    πŸ‘ Enter a connection name and specify the basic connection parameters.

    Next, select the SQL dialect of your choice. Here, we have selected 'SQL Server' as the preferred dialect. Click on Create. If the connection is successful, a prompt will display, saying 'Connection OK'.

  8. The Data Catalog window will appear. Select the desired connection, catalog, and schema from the Connection to browse, Restrict to catalog, and Restrict to schema dropdowns, then click on List Tables. The Dataiku platform will list all the required tables. πŸ‘ Select the connection, catalog and schema to filter the list of tables.
    πŸ‘ Data Catalog lists all the available tables in the datasource.
  9. Select any table from the list and click Preview to view the table data. Click Close to exit the window. πŸ‘ Preview any specific table data.

Creating a new project

To prepare data flows, create dashboards, analyze the Salesforce data, and build AI and ML models in the Dataiku DSS platform, you need to first create a new project.

  1. Select Projects from the Navigate to other sections of Dataiku menu. πŸ‘ Select Project.
  2. In the Projects screen, click New Project and select + Blank Project. πŸ‘ Select a Blank Project.
  3. In the New Project window, assign a Name and Project Key. Click Create. The new project dashboard opens up. πŸ‘ Enter a Name and Project Key.
    πŸ‘ Project dashboard is displayed.
  4. Select Notebooks from the menu at the top of the project screen. πŸ‘ Select Notebooks.
  5. Click on + Create Your First Notebook dropdown menu and select Write your own option. πŸ‘ Create the notebook.
  6. In the New Notebook window, select SQL. πŸ‘ Select SQL.
  7. Now, select the required connection from the Connection dropdown and enter a name in the Notebook Name field. πŸ‘ Select a connection and add a notebook name.

Testing the connection

To test the Salesforce connection and analyze the Salesforce data, write a query in the query compiler and click Run. The queried/filtered Salesforce data results will then appear on the screen.

πŸ‘ Query the datasource to test the connection.

Get Started Today

Download a free, 30-day trial of the CData JDBC Driver for Salesforce to integrate with Dataiku, and effortlessly build custom AI/ML models from Salesforce data.

Reach out to our Support Team if you have any questions.

Ready to get started?

Download a free trial of the Salesforce Driver to get started:

 Download Now

Learn more:

πŸ‘ Salesforce Icon
Salesforce JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Salesforce account data including Leads, Contacts, Opportunities, Accounts, and more!