Snowflake
Snowflake is a platform for executing queries against a data lake.
The Snowflake database connector brings the convenience of SlashDB's REST API to Snowflake, providing access to Snowflake data lakes in the same manner that you would access a standard relational database.
Important
This feature is only available in Enterprise Edition
Installation
To connect to a Snowflake data lake, you must do the following:
- Install SlashDB version >= 1.5.0
- Obtain root access through SSH to the server
- Install the Snowflake database connector
- Upload a valid license for connecting to Snowflake
SlashDB has to be installed before the Snowflake connector can be installed. If you don't have SlashDB yet, please see the Installation documentation.
From System Package
If SlashDB was installed from the DEB or RPM package, or if you have SlashDB running from a virtual machine or cloud images, the easiest way to add Snowflake support is by downloading and installing the corresponding connector package of the same type.
SlashDB will then automatically restart for the changes to take effect.
Debian or Ubuntu
wget https://downloads.slashdb.com/versions/2.0.1/slashdb-snowflake_1.3.0_amd64.deb
sudo apt-get install -y ./slashdb-snowflake_1.3.0_amd64.deb
Red Hat
wget https://downloads.slashdb.com/versions/2.0.1/slashdb-snowflake-1.3.0.x86_64.rpm
sudo yum install -y ./slashdb-snowflake-1.3.0.x86_64.rpm
From Python Wheel
If SlashDB was installed as a Python package, it is recommended to install the Snowflake connector as a Python package in the same environment.
Available wheel packages:
-
slashdb_snowflake-1.3.0-cp310-cp310-manylinux2014_x86_64.whl
-
slashdb_snowflake-1.3.0-cp311-cp311-manylinux2014_x86_64.whl
-
slashdb_snowflake-1.3.0-cp312-cp312-manylinux2014_x86_64.whl
Download and install the package that matches your version of Python, e.g.:
wget https://downloads.slashdb.com/versions/2.0.1/slashdb_snowflake-1.3.0-cp39-cp39-manylinux2014_x86_64.whl
/opt/slashdb/bin/pip install ./slashdb_snowflake-1.3.0-cp39-cp39-manylinux2014_x86_64.whl
After installation, SlashDB must be restarted manually.
Configuration
Uploading a Valid License
Log in as admin and navigate to the Manage > License page.
If your existing license does not allow connections to Snowflake databases, the Snowflake icon on the page will be grey and have the text "Unlicensed". In that case, you will need to upload a valid license.
If you need a license, please contact us at licensing@slashdb.com.
If you already have a license, please see the License documentation for information about uploading it.
When the new license is uploaded, the Snowflake icon will be colorized and the "Unlicensed" text will no longer appear. You can proceed to create a connection to your Snowflake data lake.
Adding a Database Instance
-
In the menu, click on Database Connections, then click the New button in the top right corner
-
Select the Snowflake type from the database selection screen
-
Fill in the configuration details for your database, then click the Next button
-
Set the database ID and other options for your database connection, then click the Create button
Editing a Database Connection
To edit an existing database connection, go to the Database Connections list and click the Edit icon in the Actions column, or click on the database ID.
The edit form is divided into three sections: Connection, Configuration, Privileges
Connection
- Description - an optional description for the connection
- Type - the database vendor type
- Database Charset - the character set used for string types
- Account Identifier - the name of the Snowflake account
- Database Name - the name of the database on the server to use
- Warehouse - the name of the Snowflake virtual warehouse
- Role - the name of the Snowflake role to use
- Database Schema - the name of the Snowflake database schema to use
Configuration
- Connect Automatically - automatically connect to the database whenever SlashDB starts
-
Cache Schema - cache the database schema after the first connection so that subsequent connections complete faster
Important
Whenever your database structure changes, you will need to disable this option, disconnect/reconnect, and then enable it again. If your database structure changes frequently, you may want to disable it entirely.
-
Auto Discover - automatically find all tables and views in your database whenever SlashDB connects
Database Credentials
Pick one of:
- Local - the Database Login and Database Password to use for database reflection
- Credential Reference - the Database Credentials to use for database reflection
Privileges
- Connect / Disconnect DB - users with privileges to control the database connection
- View DB Config - users with privileges to view the database configuration
- Modify DB Config - users with privileges to edit or delete the database configuration
Updating
To update, install a newer version of the package.
Important
After updating the core SlashDB RPM/DEB package, you must reinstall plugins