Skip to content

Connecting Databases

Connecting Databases

datarelix.ai supports nine database dialects plus direct file/object-storage querying (DuckDB). Each has its own auth modes, scope conventions, and setup steps. Click an auth mode below to jump directly to its setup guide.

Supported dialects

DialectQuery languageDefault scopeAuth modes
PostgresSQLpublic schemaUsername & password · Connection string
MySQLSQLconnected databaseUsername & password · Connection string
Azure SQL / SynapseT-SQLdbo schemaUsername & password · Connection string · Entra OBO · Service principal — secret · Service principal — certificate
DatabricksSpark SQLdefault schemaPersonal Access Token · OAuth M2M · Federated JWT
Kusto (Azure Data Explorer)KQLconfigured databaseEntra OBO · App + Certificate
BigQueryGoogleSQLpick a datasetService account JSON · OAuth
AthenaTrino/Presto SQLpick a Glue databaseIAM access keys · Assume Role
ElasticsearchES|QL (8.11+)pick allowed indicesAPI key · Basic auth
SnowflakeSQLconfigured schemaUsername & password
Files & Object Storage (DuckDB)DuckDB SQLconfigured datasetsAWS S3 · Azure Blob/ADLS · Google Cloud Storage · Direct HTTPS

Common fields

Every connection has these:

  • Name — your label for this connection.
  • Dialect — pick one of the nine.
  • Allowed scope — datarelix.ai only introspects and queries within this scope. The label changes per dialect (schema / database / dataset / index pattern), but the meaning is the same: a hard boundary around what the planner and query service can see.

Dialect-specific fields appear after you pick a dialect. See each per-dialect guide for details.

After you connect

datarelix.ai kicks off schema discovery — introspecting the schema and optionally using an LLM to enrich tables with descriptions. You can skip the LLM step and use raw introspection only.

Before analysis starts, you can add optional context: what the database contains, which tables matter most, which columns act as business keys. These notes are sent with schema metadata only; row data is never sent to the LLM.

Discovery uses this precedence for planner metadata:

  1. Database introspection — tables, columns, types, and declared PK/FK constraints.
  2. LLM enrichment — descriptions, inferred relationships, and primary-key hints for tables with no declared PK.
  3. User overrides — PK/FK toggles saved from the schema review UI.

User PK/FK changes only affect planning context. They do not alter your database and do not rewrite the raw introspection snapshot.

Re-run discovery any time you add columns, tables, or change descriptions. Discovery is idempotent.

Universal troubleshooting

SymptomLikely causeFix
Connection refusedNetwork reachabilityWhitelist datarelix.ai’s egress IPs in your database firewall.
Authentication failedWrong credentialsTest with the dialect’s native CLI or console first.
Empty schemaWrong scopeCheck Allowed scope — see the per-dialect guide for what blank means.
Discovery hangsLLM enrichment timeout on a large schemaUse raw introspection without the LLM step, or narrow the allowed scope.

For API-level error codes, see Error Codes.