See Rockset
in action

Get a product tour with a Rockset engineer

Rockset vs ClickHouse

Compare and contrast Rockset and ClickHouse by architecture, ingestion, queries, performance, and scalability.

Rockset vs ClickHouse Architecture

Architecture
Rockset
ClickHouse
Deployment model
SaaS - infrastructure, software and cluster ops managed by service provider
• Self-managed on-premises or on cloud infrastructure • Several managed cloud services available
Use of storage hierarchy
• SSDs store shared hot data, accessible from any Virtual Instance cluster • Cloud storage for durability
• Designed to use hard disk drives for storage • Can also use SSD if available
Isolation of ingest and query
Yes - separate compute clusters (Virtual Instances) for ingest and query
No
Separation of compute and storage
Yes
No - although ClickHouse Cloud decouples compute and cloud storage
Isolation for multiple applications
Yes - separate compute cluster (Virtual Instance) for each application
No

Rockset is built to be a cloud-only database and does not have a self-managed option. It disaggregates compute from both hot storage and cloud storage, allowing multiple isolated compute clusters to run on the same shared data.

ClickHouse is open source and can be deployed anywhere. Several vendors such as ClickHouse, the company, and Tinybird also offer cloud versions. Compute and storage are tightly coupled, although ClickHouse Cloud was rearchitected to decouple compute and storage. ClickHouse Cloud pricing is based on compute and storage usage.


Rockset vs ClickHouse Ingestion

Ingestion
Rockset
ClickHouse
Data sources
Managed data connectors to: • Events streams (e.g. Kafka, Kinesis) • Database CDC (e.g. MongoDB, DynamoDB, MySQL, PostgreSQL) • Data lakes (e.g. S3, Google Cloud Storage)
• Core integrations for ingestion from Kafka, S3, Google Cloud Storage • Other partner and community integrations available
Semi structured data
• Ingests JSON and XML without a predefined schema • Ingests nested data
• JSON Object type for handling nested JSON • Automatically infers schema from a subset of rows
Transformations and rollups
Yes - using SQL ingest transformations
Yes - several storage engines can pre-aggregate data

Rockset has built-in connectors that manage streaming ingestion from common data sources. It has native support for semi-structured data, so that nested JSON and XML can be ingested and queried as is.

ClickHouse has core integrations from common sources such as Kafka and S3. It recently introduced greater ability to handle semi-structured data using the JSON Object type and automatic schema inference.

Rockset vs ClickHouse Performance

Performance
Rockset
ClickHouse
Updates
Documents are mutable and can be updated at the field level
• Writes to immutable files • Updates rewrite and merge data files asynchronously • Frequent updates are not recommended due to potential for large rewrites
Indexing
• Converged Index (row, columnar and inverted index) built on all data by default • All queries are resolved through the index
• Primary indexes use sparse indexing on data ordered by primary key • Secondary data skipping indexes
Query latency
50-1000ms queries on 100s of TB
Sub-100ms to seconds, optimized for large-scale aggregations
Storage format
Converged Index, comprising a rowstore, columnstore and inverted index
• Column-oriented • Heavily compressed to minimize storage footprint
Streaming ingest
• Ingests on a per-record basis • Data latency is typically 1-2 seconds
Recommends inserting in batches of >1000 rows and <1 insert per second

Rockset is designed to make streaming data queryable as quickly as possible by avoiding the need to batch data. It also updates documents efficiently by only reindexing fields that are part of an update request. Rockset indexes all data by default, which results in storage amplification but also enables low-latency queries that require less compute.

ClickHouse leverages column orientation and heavy compression for better performance on analytics workloads. It also uses indexing to accelerate queries as well. While ClickHouse use cases often involve streaming data from Kafka, batching data is recommended for efficient ingestion.


Rockset vs ClickHouse Queries

Queries
Rockset
ClickHouse
Joins
Yes
Yes
Query language
SQL - with extensions for nested data
SQL
Developer tooling
• Data APIs - saved SQL queries executed via REST endpoint • Python, Java, Node.js and Go SDKs • UDFs
• API for querying SQL via POST command • Python, Java, Node.js and Go language clients
Visualization tools
Integrations with Tableau, Looker, Grafana, Superset, Power BI, Retoolwhic
Integrations with Metabase, Superset, Grafana, Tableau, Deepnote and Rocket BI

Rockset supports SQL as its native query language and can perform SQL joins. Users can create data APIs by storing SQL queries in Rockset that are executed from dedicated REST endpoints. Rockset integrates with some common visualization tools, but BI is not Rockset’s primary use case.

ClickHouse uses SQL for querying, with support for SQL joins. ClickHouse integrates with some common tools for visual analytics, including Superset, Grafana and Tableau.


Rockset vs ClickHouse Scalability

Scalability
Rockset
ClickHouse
Vertical scaling
Resize compute clusters (Virtual Instances) via API or in the console
Scale up single-node ClickHouse for vertical scaling
Horizontal scaling
• Add or remove compute clusters (Virtual Instances) via API or in the console • Scale out compute clusters for higher concurrency • Use separate compute clusters to isolate ingest from query or for multiple isolated applications • No rebalancing required
• Compute and storage scaled in lockstep • Data rebalanced to populate newly added nodes • Cloud offerings automate some of the scaling and rebalancing effort

Rockset Virtual Instances are distributed compute clusters that can be scaled up for faster queries or scaled out for practically unlimited concurrency or if compute isolation is needed. Rockset has shared storage that scales automatically and independently, so no rebalancing is required.

ClickHouse can be used in both single-node and distributed modes. Tight coupling of compute and storage and the need to rebalance data make scaling out more complex, but cloud versions of ClickHouse help automate this process.