Data Connectors
Connect OpenAnalyst to your databases and data warehouses using built-in connectors, with support for pooling, SSH tunnels, SSL, and query timeouts.
Supported Database Connectors
OpenAnalyst provides native connectors for the most widely used databases and data warehouses. Each connector uses an optimized driver and query adapter tuned for that specific platform.
| Connector | Type | Default Port |
|---|---|---|
| PostgreSQL | Relational | 5432 |
| MySQL / MariaDB | Relational | 3306 |
| MongoDB | Document | 27017 |
| Snowflake | Cloud data warehouse | 443 (HTTPS) |
| Google BigQuery | Cloud data warehouse | 443 (HTTPS) |
| Amazon Redshift | Cloud data warehouse | 5439 |
Note: Additional connectors including Microsoft SQL Server, ClickHouse, DuckDB, and Databricks are available on Pro, Max, and Enterprise plans.
Connection Setup
To add a new connector, navigate to Settings > Data Connectors > Add Connector and select the connector type. You will be prompted for connection credentials specific to that database.
- Select the connector type.
- Enter the host, port, database name, username, and password.
- Configure optional settings — SSL, SSH tunnel, connection pool size, and query timeout.
- Click Test Connection to verify connectivity before saving.
- Name the connector and set its access scope (all members or specific roles).
- Click Save Connector.
Warning: Credentials are encrypted at rest using AES-256. Never share connector configurations or export workspace settings to untrusted parties, as exported files may include metadata about connector configurations.
Connection Pooling
Connection pooling reduces the overhead of establishing a new database connection for every query by maintaining a pool of reusable connections. Pool settings are configured per connector:
- Minimum pool size — The number of connections kept open when idle. Default is 2.
- Maximum pool size — The upper limit on concurrent connections. Default is 10. Set lower for databases with strict connection limits.
- Idle timeout — How long an idle connection is kept alive before being released. Default is 10 minutes.
- Acquire timeout — How long a query waits for a free connection before failing. Default is 30 seconds.
SSH Tunnels
For databases that are not publicly accessible, OpenAnalyst supports SSH tunneling. The query is routed through an SSH jump host that has network access to the database.
To configure an SSH tunnel, enable the SSH Tunnel option in the connector settings and provide:
- SSH host and port (typically port 22).
- SSH username.
- Authentication method: password or private key. Paste the private key directly or upload a
.pemfile.
# Verify your SSH key fingerprint before adding it
ssh-keygen -lf /path/to/your/private_key.pemSSL Certificates
Enable SSL in the connector settings to encrypt data in transit. If your database uses a self-signed or private CA certificate, upload the CA certificate bundle in PEM format. Client certificate authentication is also supported for PostgreSQL and MySQL connectors by providing a client certificate and private key.
Query Timeout Settings
To prevent long-running queries from consuming excessive resources, configure a query timeout per connector. When a query exceeds the timeout duration, it is cancelled and an error is returned to the user. The default timeout is 60 seconds. For large data warehouse queries on Snowflake, BigQuery, or Redshift, you may need to increase this to 300 seconds or more.