Skip to main content
Version: 3.0 (next)

Databricks SQL Nodes

Databricks SQL is a cloud-native analytics service built on the Databricks Lakehouse Platform. MaestroHub provides connector nodes for running SQL queries and executing statements against your Databricks SQL warehouses.

Configuration Quick Reference​

FieldWhat you chooseDetails
ParametersConnection, Function, Function Parameters, Timeout OverrideSelect the connection profile, function, configure function parameters with expression support, and optionally override timeout.
SettingsDescription, Timeout (seconds), Retry on Timeout, Retry on Fail, On ErrorNode description, maximum execution time, retry behavior on timeout or failure, and error handling strategy. All execution settings default to pipeline-level values.
Databricks SQL Query node configuration

Databricks SQL Query Node

Databricks SQL Query Node​

Execute SQL queries against your Databricks SQL warehouse with full parameter binding.

Supported Function Types:

Function NamePurposeCommon Use Cases
Execute QueryRun parameterized SQL SELECT against Databricks SQLAnalytics dashboards, ETL reads, cross-catalog joins, data quality checks

Node Configuration​

ParameterTypeRequiredDescription
ConnectionSelectionYesDatabricks SQL connection profile to use
FunctionSelectionYesQuery function from the selected connection
Function ParametersDynamicVariesAuto-populated from the function schema (e.g., query parameters). See your Databricks SQL connection functions for full parameter details.
Timeout OverrideNumber (seconds)NoOverride the default function timeout

All function parameters support expression syntax ({{ expression }}) for dynamic values from the pipeline context.

Input​

The node receives the output of the previous node as input. Input data can be referenced in function parameter expressions using $input.

Output Structure​

On success the node produces:

{
"result": {
"rows": [
{"machine_id": "M-001", "event_count": 142, "avg_efficiency": 94.5},
{"machine_id": "M-002", "event_count": 98, "avg_efficiency": 87.3}
]
},
"_metadata": {
"success": true,
"functionId": "<function-id>",
"durationMs": 1245,
"timestamp": "2026-04-09T10:30:00Z"
}
}
FieldTypeDescription
result.rowsarrayArray of row objects with column name → value mappings — count them with result.rows.length
result.rowCountnumberHow many rows were delivered — the same as result.rows.length
_metadata.truncatedbooleantrue when the query hit a result limit and rows holds only what fit — the first 20,000 rows at the default cap, or fewer when the size budget tripped first
_metadata.truncatedBystringWhich limit cut the result — rows or bytes. Present only when truncated is true
_metadata.driver, _metadata.querystring, stringThe call's other facts: the driver name and the SQL that ran
result.rowsAffectednumberInstead of rows, when the function bound to this node is an Execute function
Check truncated before you aggregate

A query stopped at the row limit returns a shorter rows array that looks exactly like a complete result. Nothing fails and nothing warns, so a downstream sum, average or count is silently wrong. The limits are the connectors module's queryResultMaxRows (20,000 rows by default — the 20,000-row cap) and queryResultMaxBytes (25 MB by default), whichever trips first — branch on _metadata.truncated, or narrow the query, rather than assuming the read was complete; _metadata.truncatedBy says which limit did it.


Databricks SQL Execute node configuration

Databricks SQL Execute Node

Databricks SQL Execute Node​

Execute DML/DDL statements against your Databricks SQL warehouse.

Supported Function Types:

Function NamePurposeCommon Use Cases
Execute StatementRun INSERT, UPDATE, DELETE, MERGE, CREATE, ALTER, DROP statementsData modifications, schema changes, incremental loads

Node Configuration​

ParameterTypeRequiredDescription
ConnectionSelectionYesDatabricks SQL connection profile to use
FunctionSelectionYesExecute function from the selected connection
Function ParametersDynamicVariesAuto-populated from the function schema. See your Databricks SQL connection functions for full parameter details.
Timeout OverrideNumber (seconds)NoOverride the default function timeout

Input​

The node receives the output of the previous node as input. Use expressions like {{ $input[0].result }} to dynamically pass values into parameterized statements.

Output Structure​

On success the node produces:

{
"result": {
"rowsAffected": 150
},
"_metadata": {
"success": true,
"functionId": "<function-id>",
"durationMs": 832,
"timestamp": "2026-04-09T10:30:00Z"
}
}
FieldTypeDescription
result.rowsAffectednumberNumber of rows affected by the statement
_metadata.driver, _metadata.querystring, stringThe call's other facts: the driver name and the SQL that ran

Settings Tab​

Both Databricks SQL node types share the same Settings tab:

SettingTypeDefaultDescription
DescriptionText—Optional description displayed on the node
Timeout (seconds)NumberPipeline defaultMaximum time the node may run before timing out
Retry on TimeoutTogglePipeline defaultAutomatically retry the node if it times out
Retry on FailTogglePipeline defaultAutomatically retry the node if it fails
On ErrorSelectionPipeline defaultError strategy: Pipeline Default (the pipeline's Error Handling setting), Stop Pipeline or Continue Execution

When left at their defaults, these settings inherit from the pipeline-level execution configuration.