Connecting Your Data
  • 18 Nov 2022
  • 3 Minutes to read
  • Contributors
  • Dark
    Light

Connecting Your Data

  • Dark
    Light

👤 This documentation is intended for Workspace Admins. Check with your Team Admin for additional access.

Introduction

If you're an Administrator, one of your first steps will be connecting a supported database to Preset. In this article we'll describe this process from beginning to end.

As a cloud software, Preset only connects to databases that are publicly addressable. Customer using locally hosted databases can consider deploying their database to the internet via a cloud provider or using a pre-existing cloud provider's database solution.

Before starting, allowlist the following IPs to ensure that Preset can access your database:

us-west-2 (us1a) us-east-1 (us2a) eu-north-1 (eu5a) ap-northeast-1 (ap1a)
35.161.45.11 44.193.153.196 13.48.95.3 35.74.159.67
54.244.23.85 52.70.123.52 13.51.212.165 35.75.171.157
52.32.136.34 54.83.88.93 16.170.49.24 52.193.196.211

If you are not sure where your Preset workspace is located, you can refer to the URL on your browser when accessing Preset. It should look like this: https://xxxxxxxx.us2a.app.preset.io/superset..., where us2a means it is in us-east-1.


Select a Database

In the Toolbar, hover your cursor over the plus + icon, then Data, and then select Connect Database.

New_Connect_a_Database_v2

The Connect a database window appears. Select the appropriate database card:

Select_Google_BigQuery

...or, if your database is not one of these, select Supported Databases and choose a database from the drop-down list.

Select_Supported_Database

Preset supports these databases. If you don't see your preferred database listed, then please contact support to have your database added to our list of supported databases.


Connection Methods

You can configure the database connection by providing connection credentials or supplying a SQLAlchemy URI, depending on the type of database. Both methods are described below.

Method 1: Define Credentials

Method 2: Connect with SQLAlchemy URI

  • If your database is not listed above, then you can connect by providing a SQLAlchemy URI.

Method 1: Define Credentials

To demonstrate this option, select the Amazon Redshift card.

Method_One_Credentials_1

The Connect a database window appears.

Define_Credentials_1

Fields you may encounter when defining credentials include:

  • Host*: A host, defined as either an IP address or as a domain.
  • Port*: Enter a relevant port number for the connection. If user does not have a port number, then use the database's default port value. This fields is used when connecting Redshift (default port 5439), PostgreSQL (default port 5432), and MySQL (default port 3306) databases.
  • Database Name*: The name of the database that you are connecting to.
  • Username*: The username associated with a user account.
  • Password: The password associated with a user account.
  • Display Name*: A nickname for the database (for display in Preset).
  • Additional Parameters: Any additional custom parameters, if needed.
  • SSL: Select the switch to require a SSL connection.

*: Required

Select Connect to connect your database to Preset.

You may be prompted to provide additional configuration settings. See Advanced Connection Settings to learn more.

URI_or_BigQuery_Connect_3


Method 2: Connect with SQLAlchemy URI

The majority of our supported databases are connected via a SQLAlchemy URI — please see connection strings for reference.

For example, after selecting Dremio from the Supported Databases list...

Method_Two_Select_a_Database_from_List

...you can see that the connection requires only a display name and URI to connect to Preset:

SQLAlchemy_URI_1

When done, select Test Connection to see if it works — a notification message will appear.

If no additional connection settings are required, then go ahead and select Connect.


Need a hand?

Connection Walkthrough Articles


Supported Databases

Preset supports the following databases as well as any database that can be connected to via a SQLAlachemy URI.

Amazon Athena Amazon Redshift Apache Druid Apache Hive
Apache Impala Apache Kylin Apache Pinot Apache Spark SQL
Aurora MySQL (Data API) Aurora PostgreSQL (Data API) Azure Synapse ClickHouse
CockroachDB Databricks Interactive Cluster (Hive) Databricks SQL Endpoint (ODBC) Dremio
ElasticSearch (OpenDistro SQL) ElasticSearch (SQL API) Firebird Firebolt
Google BigQuery Google Sheets Microsoft SQL Server MySQL
PostgreSQL Presto SAP HANA Snowflake
Teradata Trino Vertica
...and any database that supports a SQLAlchemy URI connection!

Was this article helpful?