Compare CrateDB with TimescaleDB
TimescaleDB is a time-series database built as a PostgreSQL extension, greatly improving the functionality of PostgreSQL for time-series workloads. However, TimescaleDB is not the best option for large data volume use cases with high data variety and a need for efficient, simple scalability.
TimescaleDB was conceived as a single-node database. In contrast, CrateDB was built to scale: distribution is at the core of CrateDB's architecture, which provides unlimited horizontal scalability from the start. Many developments later, CrateDB is now a fully mature distributed database—while the multi-node version of Timescale was released in 2020.
TimescaleDB |
CrateDB |
|
Cluster type | Multi-node | Multi-node (Shared-nothing) |
---|---|---|
Data replication | Yes | At table level |
Open-source | Timescale License (TSL) / Apache 2.0 | Apache 2.0 |
Access language | ANSI SQL | ANSI SQL |
Schemas | Static | Dynamic |
Columnar indexing | Yes | Yes |
Aggregation queries | Yes | Yes |
JOINs | No | Full |
Full-text search | No | Yes (Lucene powered) |
Since scalability is at the core of CrateDB, scaling it is as easy as can be—especially when operated in the cloud. Data replication and cluster rebalancing are automatic in CrateDB, performing aggregations, JOINs, sub-selects, and ad-hoc queries at in-memory speed. It also includes Lucene-powered full-text search.
(TimescaleDB supports JSON columns, but their performance is not optimal... And indices must be manually configured in order to get a good response. With CrateDB, indexing is automatic.)
Besides, TimescaleDB needs two times more storage than CrateDB in the IIoT workloads we've tested.
In summary: for use cases involving huge data volumes, high concurrency, and requiring real-time response, we believe CrateDB is a better fit than TimescaleDB.
- Scalability is the heart and soul of CrateDB. Customers have been using clusters with 80+ nodes in production for years;
- CrateDB's excellent indexing structure assures the handling of time series data with efficiency;
- At the same time, its shared-nothing distribution allows for horizontal scalability without a single point of failure;
- On top of it, CrateDB offers mature features like automatic cluster rebalancing and full-text search, still not present on TimescaleDB.