Rockset vs. SingleStore
for Real-Time Analytics
SingleStore is a hybrid transactions/analytics processing (HTAP) database. In order to support both use cases, it makes compromises that hinder performance, ease of use and cost. Rockset, on the other hand, is purpose-built for real-time analytics in the cloud. With both compute-storage and compute-compute separation for real-time analytics, it achieves unmatched price performance.
Compute and storage
SingleStore is resource inefficient for real-time workloads.
SingleStore uses cloud object storage to separate compute and storage, incurring too much latency for real-time workloads. There is no isolation of ingestion and queries, leading to compute contention and the overprovisioning of resources. Data needs to be duplicated to support multiple workloads which is inefficient and costly.
Streaming Ingest
SingleStore is not designed for high-volume writes.
With SingleStore, streaming data and queries share the same compute, causing compute contention and application slowdown.
Mutability
SingleStore is immutable.
SingleStore’s columnar store is immutable, requiring compute-intensive copy-on-writes to handle updates and deletes. When handling upserts, ingestion and queries are blocked until a merge operation completes.
Data Model
SingleStore is designed for structured data and static schemas.
SingleStore’s JSON column type is inefficient for querying semi-structured data, requiring the construction and management of pipelines to flatten nested JSON before ingestion. SingleStore requires ALTER TABLE commands to make schema changes, adding latency.
Performance Tuning
SingleStore requires index management to achieve good query performance.
SingleStore requires configuring and managing indexes to achieve optimal query performance. Too many indexes cause write contention. Too few indexes slows down query performance. Adding and removing indexes is an operational burden.
Performance for Large Working Datasets
SingleStore is an in-memory datastore.
SingleStore caches hot data for queries and moves cold data to blob storage. When the working set does not fit into memory, SingleStore has to read data from object storage which increases latency. This also means that when scaling compute SingleStore needs to move data from blob storage to the cache, adding significant latency.
Resources
Related Blog
Introducing Vector Search on Rockset: How to run semantic search with OpenAI and Rockset
Read more
Related Webinar
CTO Talk: Comparing Elasticsearch and Rockset Streaming Ingest and Query Performance
Read more
Related Blog
Updates, Inserts, Deletes: Comparing Elasticsearch and Rockset for Real-Time Data Ingest
Read more
Rockset is purpose built for real-time analytics in the cloud, offering unparalleled speed and efficiency.
Here are four reasons why:
Converged Indexing™
Creation of search, columnar and row indexes at ingest time
Full SQL
SQL search, aggregations and joins on semi-structured data
Mutability
Efficient inserts, updates and deletes
Cloud-Native Architecture
Independent scaling of storage-compute and compute-compute