ClickHouse
ClickHouse Writer is a Striim target adapter that writes real-time streaming data and initial-load data into ClickHouse. In the context of Striim integration, ClickHouse serves as a scalable analytical target for continuously streamed data: Striim captures changes or events from a source system, optionally filters, routes, transforms, or enriches the stream, and writes the resulting events into ClickHouse, where they become available for reporting and analysis.
A typical ClickHouse Writer pipeline looks like this:
Striim captures data from a source system (a CDC-enabled database, a streaming platform, a NoSQL database, a SaaS application, or a file source).
Striim optionally filters, routes, transforms, or enriches the event stream.
Striim writes the resulting stream to one or more ClickHouse tables using ClickHouse Writer.
Analysts, applications, or BI tools query ClickHouse for reporting and analysis.
ClickHouse Writer feature summary
Feature | Details |
|---|---|
Supported sources | ClickHouse Writer can write data from all sources supported by Striim, including CDC sources such as Oracle and SQL Server, streaming sources such as Kafka, NoSQL sources such as MongoDB, application sources such as Salesforce and HubSpot, and file sources such as Amazon S3. |
Authentication | ClickHouse Writer authenticates its connection using a Connection Profile, with Password, SSL X.509 (mutual TLS, self-managed deployments only), or Microsoft Entra ID Service Principal (OAuth, preview) authentication. |
Writing method | ClickHouse Writer writes the data into a CSV file and uploads CSV data directly to ClickHouse using the ClickHouse JDBC V2 client (version 0.9.8). Data is batched locally as CSV and sent directly to ClickHouse; there is no intermediate cloud staging step. |
Supported table engines | MergeTree (default), ReplacingMergeTree, CollapsingMergeTree, CoalescingMergeTree (requires ClickHouse server v25.6 or later), SummingMergeTree, AggregatingMergeTree, Replicated MergeTree engines, and Distributed tables. See Choosing a table engine. |
Supported write modes | Append Only (default) and Merge, available when Table Engine is MergeTree. See How ClickHouse Writer applies data changes. |
Additional writing features | Supports schema evolution to detect and propagate supported DDL changes from the source to ClickHouse tables. |
Resilience and recovery | Supports connection retry to avoid halting the application on transient connection issues. Supports recovery with at-least-once processing. Supports seamless password and certificate rotation without redeploying the application. |
Performance | Supports parallel writer threads (ParallelThreads) to increase throughput. To parallelize writes to a single large table, route events across multiple ClickHouse Writer targets partitioned by the table's sorting key (see Scaling writes to a single table). |
Programmability | Flow Designer wizards support initial load with automatic schema conversion, and CDC, from MariaDB, MySQL, Oracle, PostgreSQL, Salesforce, Snowflake, and SQL Server, in addition to standard TQL application development. |
Metrics and auditing | Key metrics for ClickHouse Writer are available through Striim's monitoring features. |
JDBC client version | ClickHouse Writer uses the ClickHouse JDBC V2 client, version 0.9.8. |
When to use ClickHouse Writer
Use ClickHouse Writer when you need to continuously ingest operational or transactional data into ClickHouse for low-latency analytics, reporting, or observability. Because different ClickHouse table engines handle updates and deletes differently, review Choosing a table engine before you build a pipeline, since your choice of engine determines what CDC operations ClickHouse Writer can apply and what schema Striim can create automatically.
