Connecting to Snowflake Database
- To add a new connection, navigate to the File tab and click on Edit Connections, or press [⌘ + O] | [Ctrl + O].
- In the dialog box, click the Add icon (➕) next to the Connections header and select Snowflake.
3. To finish creating a connection, enter valid data in the fields of the New connection dialog.
- Connection name – Replace the default New Connection with a meaningful value.
- Database JDBC DRIVER – Specify user drivers for the data source, or click the 'download them' link below this field settings area. For detailed instructions on setting up drivers, see Add a user driver to an existing connection.
- Host – Snowflake automatically determines the host address by concatenating the account name you specified and the Snowflake domain (com).
🔎 TIP: See an example with an account name by region using this link
- Authentication – The default value is Standard, which uses the internal Snowflake authenticator.
Another available type is SAML – Snowflake's externalbrowser uses your web browser to authenticate with Okta, ADFS, or any other SAML 2.0-compliant identity provider (IdP) that has been defined for your account.
- User and Password – Enter your Snowflake credentials.
- Role – Specify your security role within your team. If you don't know your role, leave this field blank.
- Database – Select the default database you're going to use in the client session.
- Warehouse – Select a warehouse that will support the operations in a Snowflake session. If you don't know which specific warehouse to use, contact your Snowflake DBA.
- Connection timeout (sec) – Specify the value to tell the session when to disconnect.
- Advanced Properties – Supply additional JDBC parameters if needed.
🔎 TIP: Starting from v3.10.1 of the Snowflake JDBC driver, if you need to execute multiple statements when using the 'Run Batch' mode, set MULTI_STATEMENT_COUNT parameter with desired number of statements in the 'Advanced Properties':
or in 'Pre-Execution Script' at the session level or the account level:
- Click Test to ensure that the connection to the data source is successful.
- Click Save. A newly created connection will be displayed in your Database Explore panel just right under the Connections header.
🔎 NOTE: If you need more advanced information on how to set up a Snowflake connection, please, contact us through firstname.lastname@example.org
🔎 TIP: Here is the link to other configurable parameters supported within Snowflake's JDBC driver
Snowflake External Tables
You probably know that Snowflake provides general availability for the External Tables. Coginiti supports this feature. Using External Tables, you'll be able to handle the challenges of augmenting existing data lakes and running ad-hoc analytics via queries.
🔎 TIP: Check Snowflake's article about the External Tables feature for more information
Snowflake External Tasks as Database Objects and DDL
We also now support Snowflake Tasks.
You'll be able to see Tasks and their hierarchy in Coginiti's Database Explorer. You can schedule your Tasks to independently execute single SQL statements, including calls to stored procedures. Or use them to generate periodic reports by inserting and merging rows into a report table. What's more, you can combine Tasks with table streams to ensure continuous ELT workflows and quickly process recently changed table rows.
🔎 TIP: Check the Tasks feature in the Snowflake's documentation for details
Snowflake SAML 2.0
Yes, we support this one too. Coginiti continuously builds new features for our wide Snowflake user community to improve your analytics journey further. So, from now on, you'll be able to use SAML 2.0 IdP authentication in our application.
🔎 TIP: Check the Snowflake's documentation for details on the Federated Authentication & SSO
Snowflake Stored Procedure and Function Parser
We learn to recognize the routine-like code as a single statement. Starting from Coginiti v22.02, running a script with multiple procedures or triggers (or any entity with a semicolon inside) is possible in all supported modes: at cursor, in a sequence, and as batch. Even if ‘$’ or ‘$$’ is present as part of the entity text, you don’t need to switch parameter parsing off. Moreover, you can specify parameters or session variables inside the statement.