The ACID Dilemma: Why ClickHouse Falls Short and SingleStore Delivers

Clock Icon

6 min read

Pencil Icon

May 7, 2025

When building modern data platforms, choosing the right database engine is critical.

The ACID Dilemma: Why ClickHouse Falls Short and SingleStore Delivers

ClickHouse has gained popularity for its blazing-fast analytical processing, but its lack of ACID compliance raises important questions — especially when your applications demand consistency, reliability and transactional support.

On the other hand, SingleStore offers a unified architecture that supports both OLAP and OLTP workloads, bringing speed without sacrificing integrity. In this blog, we’ll dive into the core limitations of ClickHouse and explore why SingleStore is a smarter, future-ready alternative for real-time applications.

understanding-single-store-vs-clickhouseUnderstanding SingleStore vs. Clickhouse

SingleStore is a real-time analytics and AI database. With familiar SQL tooling and MySQL wire protocol compatibility, SingleStore eliminates the need for specialized databases and simplifies database architectures.

SingleStore is also built to handle multiple data types — including JSON, time-series, geospatial and full-text search— delivering high-speed data ingestion on a unified transactional (OLTP) and analytical (OLAP) foundation.

what-is-click-houseWhat is ClickHouse?

ClickHouse, developed by Yandex and maintained by ClickHouse, Inc., is a real-time data warehouse and open-source database that uses a highly performant columnar database built primarily for analytics. It is known for its exceptionally fast query performance on large datasets. ClickHouse leverages vertical partitioning, vectorized query execution and advanced compression techniques, making it a go-to solution for log analytics, observability and time-series workloads.

key-differences-between-single-store-and-click-houseKey differences between SingleStore and ClickHouse

Aspect

SingleStore

ClickHouse

Primary focus

Converged (OLTP + OLAP) workloads

High-performance analytical (OLAP) workloads

Storage model

Universal columnstore for both OLTP and OLAP

Columnar storage optimized for analytical queries

Query execution engine

Distributed SQL engine with compute pushdown

MPP engine with vectorized execution and compression

Transaction

SingleStore supports full ACID transactions

Does not fully support ACID transactions

Data ingestion

Real-time ingestion with inbuilt pipeline support for multiple sources like Kafka, S3, Iceberg format, JSON

High ingestion rates, typically with batch inserts

Data updates

Supports standard SQL DML (INSERT, UPDATE, DELETE) for transactions

Limited support; best for append-only or batch updates

Workload flexibility

Handles mixed workloads (operational + analytical) in one system

Primarily optimized for analytical, read-heavy workloads

Scalability

Both horizontal and vertical online scaling

Horizontal scaling by adding more nodes; excels at massive scale analytics

Compression

High compression ratio (60-70%)

Support compression

Sharding

Automatic

Manual

Data transformation

Inbuilt support of TRANSFORM using pipelines

No built-in syntax or feature

Use case fit

Real-time analytics, mixed workload consolidation, simplifying data infrastructure

Analytical queries

Vector datatypes

Mature

New

JSON support

Fully integrated JSON data type and functions

Object data type and related functions to handle JSON data

CDC out

Inbuilt CDC out feature

Not inbuilt

WASM

Allows you to create UDFs/TVFs in a language of your choice and run them in a sandboxed environment for enhanced security

No support

how-to-setup-single-store-and-click-houseHow to setup SingleStore and ClickHouse

SingleStore

  • On-premises. Please follow the instructions here to download and install SingleStore
  • Cloud: Start free. Spin up your cluster on the cloud of your choice (AWS/GCP/Azure) using the link here

ClickHouse

  • On-premises. Follow the instructions in the link to download and install ClickHouse. link here

single-store-and-click-house-configurationSingleStore and ClickHouse Configuration

ClickHouse

  • Installation type: Cloud (region: Ohio)
  • ClickHouse server version: 24.8
  • Size: Scale up to 48 vCPU, 192 GiB (From 6 vCPU, 24 GiB) 
  • Engine: MergeTree

SingleStore

  • Installation type: Cloud (region: Ohio)
  • SingleStore version: 8.7.1
  • Size: S-1, 8vCPU ,  64 GiBPartition: 32
  • Table type: Columnstore

acid-for-transaction-reliabilityACID for transaction reliability

ACID guarantees are vital for any data platform — whether OLTP or OLAP — because they ensure reliable, consistent transactions, support concurrent data access without conflicts and protect against data loss after crashes. While ClickHouse delivers high-speed analytical queries, it does not implement full ACID transactions for row-level updates.

 In contrast, SingleStore provides strong ACID compliance and outperforms other databases under mixed read/write analytical workloads, making it a superior choice for modern, high-concurrency use cases. This is why we’ve seen many teams choose to move away from partial solutions like ClickHouse and adopt SingleStore for its best-in-class performance and fully transactional integrity.

Let’s put both databases through the ACID test to provide a clear, evidence-based comparison.

SingleStore

Clickhouse

acid-test-parametersACID test parameters

Atomicity

Atomicity is important because it ensures that a transaction is all or nothing — either all operations succeed, or none do — preventing partial changes that could corrupt data. We’ll do a simple fund transfer from Alice to Bob, intentionally triggering an error partway through so  the entire transaction rolls back. You can see clearly that SingleStore passed this test, but this is not supported in ClickHouse Cloud or Self Managed.

Atomicity on SingleStore

Atomicity on ClickHouse

Consistency 

Consistency ensures any transaction brings  the database from one valid state to another, respecting constraints. You can clearly see that SingleStore constraints prevent invalid data from committing, where ClickHouse does not support transactions, unique key constraints and check constraints are also unenforced.

Consistency on SingleStore

Consistency on ClickHouse

Isolation 

Isolation ensures concurrent transactions do not interfere with each other’s intermediate states. A classic test is to open two separate sessions (transaction A and transaction B) and see if uncommitted changes in transaction A are visible (or blocked) in transaction B under different isolation levels.

Isolation on SingleStore

Isolation on ClickHouse

Isolation in ClickHouse is limited because it does not support row-level locks in the way an OLTP database does. We cannot do concurrent multi-statement transactions that remain uncommitted and invisible to other sessions.

ClickHouse does not provide the typical “dirty read/non-repeatable read/phantom read” isolation-level tests because it applies a simpler model: once the data is inserted, it is committed and visible.

Durability 

Durability guarantees that once a transaction is committed, it will remain so (even if the system crashes or restarts).

Durability on SingleStore

SingleStore maintains a transaction log that is periodically persisted to disk. Durability depends on the underlying configuration of “sync durability” or “async durability.”

We can use the “sync” setting (synchronous durability) for fully durable commits, which flush the transaction log before acknowledging a commit. SingleStore supports multi statement durability under transaction.

Durability on ClickHouse

ClickHouse provides single-statement durability guarantees.

ACID is fundamentally about transactional guarantees, so a database like ClickHouse that does not expose any notion of transactions (with commits and rollbacks) is generally not considered ACID compliant.

If a database like ClickHouse supports these single-statement atomic operations while ensuring consistency, isolation and durability for those operations, then strictly speaking,it can be described as ACID for single-statement transactions. But it is uncommon to call a database like this a “fully ACID-compliant system.”

After the above evaluation and the importance of strong transactional guarantees, I have identified a key limitation with ClickHouse:it is not a fully ACID-compliant database. While ClickHouse offers good performance for analytical workloads, it lacks support for full transactional features like multi-statement transactions, rollback and strict consistency guarantees.

To better align with your need for strong data integrity, consistency and operational flexibility, you should shift to SingleStore, a real-time analytics database that fully supports ACID compliance. SingleStore combines high-performance analytics with full transactional support, ensuring reliable data consistency and atomicity across complex workloads.

Start free today.


Share