Skip to main content
Version: 2.7-dev

ClickHouse Nodes

MaestroHub provides native ClickHouse integration for analytical queries, DML/DDL execution, and bulk inserts. Communication uses ClickHouse's native TCP protocol, with native typed binding for Map(K, V) / Array(T) / DateTime64 columns, full TLS / mTLS, and LZ4 / ZSTD wire compression.

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.

Node Types

ClickHouse connector provides three specialized node types for different operation patterns:

NodePurposeCommon Use Cases
QueryExecute SELECT queries and return structured rowsAggregations, time-series rollups, top-K analytics, enrichment lookups
ExecuteExecute DML/DDL statements, return rows affectedINSERT … SELECT materialisation, schema migrations, OPTIMIZE TABLE maintenance
WriteLoad pipeline data into a table with auto schema detection or auto MergeTree creationBulk telemetry ingest, native Map/Array column binding, auto-create on the fly

ClickHouse Query node configuration

ClickHouse Query Node

ClickHouse Query Node

Execute SQL SELECT queries and return rows as structured data. Supports parameterized queries with ((param)) syntax and full ClickHouse SQL — aggregate combinators, window functions, ARRAY JOIN, LIMIT BY, and time-series helpers like toStartOfHour() / toStartOfFiveMinute().

Supported Function Types:

Function NamePurposeCommon Use Cases
QueryRun parameterized SELECT queries against ClickHouseHourly / daily rollups, top-K dashboards, enrichment joins with dictionaries, latest-value lookups via argMax()

ClickHouse Execute node configuration

ClickHouse Execute Node

ClickHouse Execute Node

Execute DML/DDL statements — INSERT, INSERT … SELECT, ALTER, CREATE, OPTIMIZE, TRUNCATE, and others — and return affected-row counts where ClickHouse reports them. Use for ad-hoc writes, schema migrations, and table maintenance.

Supported Function Types:

Function NamePurposeCommon Use Cases
ExecuteRun any DML/DDL statement against ClickHouseMaterialise rollups with INSERT INTO … SELECT, add columns with ALTER TABLE … ADD COLUMN, force background merges with OPTIMIZE TABLE … FINAL, fast purges with TRUNCATE TABLE

ClickHouse Write node configuration

ClickHouse Write Node

ClickHouse Write Node

Bulk-insert pipeline rows into a ClickHouse table using batched VALUES inserts. Supports two paths: writing to an existing table (auto-detected schema mapping) or auto-creating a MergeTree table with operator-supplied ORDER BY. Native Map(K, V) and Array(T) columns are bound directly without JSON round-tripping — a pipeline field of {"unit": "celsius"} lands as a queryable Map, not a string blob.

Supported Function Types:

Function NamePurposeCommon Use Cases
WriteLoad structured pipeline data into a ClickHouse tableStream MQTT / OPC UA / Modbus telemetry into a MergeTree, auto-create tables from pipeline rows, append to a Distributed table fronting a cluster