VOOZH about

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

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


Build AI/ML Models with Live Snowflake Data using Dataiku

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

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 Snowflake, Dataiku enhances data integration, preparation, real-time analysis, and reliable model deployment for Snowflake data.

With built-in optimized data processing, the CData JDBC Driver offers unmatched performance for interacting with live Snowflake data. When you issue complex SQL queries to Snowflake, the driver pushes supported SQL operations, like filters and aggregations, directly to Snowflake 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 Snowflake data using native data types.

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

About Snowflake Data Integration

CData simplifies access and integration of live Snowflake data. Our customers leverage CData connectivity to:

  • Reads and write Snowflake data quickly and efficiently.
  • Dynamically obtain metadata for the specified Warehouse, Database, and Schema.
  • Authenticate in a variety of ways, including OAuth, OKTA, Azure AD, Azure Managed Service Identity, PingFederate, private key, and more.

Many CData users use CData solutions to access Snowflake from their preferred tools and applications, and replicate data from their disparate systems into Snowflake for comprehensive warehousing and analytics.

For more information on integrating Snowflake with CData solutions, refer to our blog: https://www.cdata.com/blog/snowflake-integrations.


Getting Started


Preparing the Dataiku DSS environment

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

Install the CData JDBC Driver for Snowflake

First, install the CData JDBC Driver for Snowflake 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.snowflake.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 Snowflake, beginning with jdbc:snowflake: followed by a series of semicolon-separated connection string properties.

    To connect to Snowflake:

    1. Set User and Password to your Snowflake credentials and set the AuthScheme property to PASSWORD or OKTA.
    2. Set URL to the URL of the Snowflake instance (i.e.: https://myaccount.snowflakecomputing.com).
    3. Set Warehouse to the Snowflake warehouse.
    4. (Optional) Set Account to your Snowflake account if your URL does not conform to the format above.
    5. (Optional) Set Database and Schema to restrict the tables and views exposed.
    6. (Optional) If MFA is enabled on your Snowflake account (via Duo Security), set MFACode to the passcode generated by your Duo authenticator app.

    See the Getting Started guide in the CData driver documentation for more information.

    Built-in Connection String Designer

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

    java -jar cdata.jdbc.snowflake.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:snowflake:Authscheme=Password;URL=https://myaccount.snowflakecomputing.com;User=Admin;Password=test123;Server=localhost;Database=Northwind;Warehouse=TestWarehouse;Account=Tester1;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.snowflake.SnowflakeDriver
    • 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 Snowflake 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 Snowflake connection and analyze the Snowflake data, write a query in the query compiler and click Run. The queried/filtered Snowflake 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 Snowflake to integrate with Dataiku, and effortlessly build custom AI/ML models from Snowflake data.

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

Ready to get started?

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

 Download Now

Learn more:

πŸ‘ Snowflake Enterprise Data Warehouse Icon
Snowflake JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with Snowflake.