See Rockset
in action

Get a product tour with a Rockset engineer

StarRocks vs Rockset

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

StarRocks vs Rockset Architecture

Architecture
StarRocks
Rockset
Deployment model
PaaS or self managed
SaaS - infrastructure, software and cluster ops managed by service provider
Use of storage hierarchy
Data is stored on disk and in memory
• SSDs store shared hot data, accessible from any Virtual Instance cluster • Cloud storage for durability
Isolation of ingest and query
No, but you can limit resources for ingestion and querying separately
Yes - separate compute clusters (Virtual Instances) for ingest and query
Separation of compute and storage
No, but StarRocks supports nodes that don't store data locally
Yes
Isolation for multiple applications
No
Yes - separate compute cluster (Virtual Instance) for each application

StarRocks is a high-performance OLAP database that can be deployed on the cloud or self managed. StarRocks does not separate compute and storage and offers limited options for resource isolation. It offers a robust set of features and high performance but requires considerable expertise to operate and scale.

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.


StarRocks vs Rockset Ingestion

Ingestion
StarRocks
Rockset
Data sources
Streaming • Kafka • Flink Data lakes • HDFS compatible • Cloud storage
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)
Semi structured data
Supports columns with JSON data • Does not support mixed-type columns • Support for star and snowflake schemas
• Ingests JSON and XML without a predefined schema • Ingests nested data
Transformations and rollups
Yes, via materialized views
Yes - using SQL ingest transformations

StarRocks ingests data from a variety of sources, including both batch and streaming data. StarRocks can ingest nested JSON data, but enforces type at the column level.

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.

StarRocks vs Rockset Performance

Performance
StarRocks
Rockset
Updates
While StarRocks is mutable, the update rate is slow, which is why it is most often used for append-only workloads
Documents are mutable and can be updated at the field level
Indexing
Columnar index, limited support for inverted indexes
• Converged Index (row, columnar and inverted index) built on all data by default • All queries are resolved through the index
Query latency
50-1000ms queries on 100s of TB
50-1000ms queries on 100s of TB
Storage format
• StarRocks is a columnstore that organizes data into prefix indexes, per-column data blocks, and per-column indexes • All data is replicated 3 times to achieve both fault-tolerance and concurrency
Converged Index, comprising a rowstore, columnstore and inverted index
Streaming ingest
Data latency is typically 1-2 seconds
• Ingests on a per-record basis • Data latency is typically 1-2 seconds

StarRocks was purpose-built for high-performance ingest, low-latency queries, and high concurrency. Optimized performance requires significant manual tuning.

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.


StarRocks vs Rockset Queries

Queries
StarRocks
Rockset
Joins
Multi-table join support
Yes
Query language
SQL
SQL - with extensions for nested data
Developer tooling
Minimal
• Data APIs - saved SQL queries executed via REST endpoint • Python, Java, Node.js and Go SDKs • UDFs
Visualization tools
Compatibility with MySQL protocols enables StarRocks to work with BI tools
Integrations with Tableau, Looker, Grafana, Superset, Power BI, Retoolwhic

StarRocks uses a high-performance vectorized SQL engine, a custom-built cost-based optimizer, and has support for materialized views.

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.


StarRocks vs Rockset Scalability

Scalability
StarRocks
Rockset
Vertical scaling
• Both frontend and backend nodes can be manually resized
Resize compute clusters (Virtual Instances) via API or in the console
Horizontal scaling
• Both frontend and backend nodes can be manually scaled horizontally
• 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

StarRocks can scale up or out, but its tightly coupled compute and storage scale together for performance. This often results in resource contention and overprovisioning. Scaling StarRocks often requires deep expertise as there are many levels of the system that need to be managed.

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.