DBMS > ClickHouse vs. Datomic vs. LokiJS vs. RocksDB vs. SWC-DB
System Properties Comparison ClickHouse vs. Datomic vs. LokiJS vs. RocksDB vs. SWC-DB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | ClickHouse Xexclude from comparison | Datomic Xexclude from comparison | LokiJS Xexclude from comparison | RocksDB Xexclude from comparison | SWC-DB Super Wide Column Database Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A high-performance, column-oriented SQL DBMS for online analytical processing (OLAP) that uses all available system resources to their full potential to process each analytical query as fast as possible. It is available as both an open-source software and a cloud offering. | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | In-memory JavaScript DBMS | Embeddable persistent key-value store optimized for fast storage (flash and RAM) | A high performance, scalable Wide Column DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Key-value store | Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Time Series DBMS | Time Series DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | clickhouse.com | www.datomic.com | github.com/techfort/LokiJS | rocksdb.org | github.com/kashirin-alex/swc-db www.swcdb.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | clickhouse.com/docs | docs.datomic.com | techfort.github.io/LokiJS | github.com/facebook/rocksdb/wiki | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Clickhouse Inc. | Cognitect | Facebook, Inc. | Alex Kashirin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2016 | 2012 | 2014 | 2013 | 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | v24.6.2.17-stable, July 2024 | 1.0.7180, July 2024 | 9.4.0, June 2024 | 0.5, April 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0 | commercial limited edition free | Open Source | Open Source BSD | Open Source GPL V3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | Java, Clojure | JavaScript | C++ | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | FreeBSD Linux macOS | All OS with a Java VM | server-less, requires a JavaScript environment (browser, Node.js) | Linux | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes via views | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | Close to ANSI SQL (SQL/JSON + extensions) | no | no | no | SQL-like query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | gRPC HTTP REST JDBC MySQL wire protocol ODBC PostgreSQL wire protocol Proprietary protocol | RESTful HTTP API | JavaScript API | C++ API Java API | Proprietary protocol Thrift | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# 3rd party library C++ Elixir 3rd party library Go 3rd party library Java 3rd party library JavaScript (Node.js) 3rd party library Kotlin 3rd party library Nim 3rd party library Perl 3rd party library PHP 3rd party library Python 3rd party library R 3rd party library Ruby 3rd party library Rust Scala 3rd party library | Clojure Java | JavaScript | C C++ Go Java Perl Python Ruby | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | yes Transaction Functions | View functions in JavaScript | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | By using transaction functions | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | key based and custom | none But extensive use of caching in the application peers | none | horizontal partitioning | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Asynchronous and synchronous physical replication; geographically distributed replicas; support for object storages. | none But extensive use of caching in the application peers | none | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | none | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no atomic operations within a single collection possible | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes recommended only for testing and development | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles. Column and row based policies. Quotas and resource limits. Pluggable authentication with LDAP and Kerberos. Password based, X.509 certificate, and SSH key authentication. | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | DoubleCloud: Fully managed ClickHouse alongside best-in-class managed open-source services to build analytics at scale. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ClickHouse | Datomic | LokiJS | RocksDB | SWC-DB Super Wide Column Database | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | A Beginner’s Guide to ClickHouse Database Real-time database startup ClickHouse acquires PeerDB to expand its Postgres support Azur Games migrates all game analytics data to ClickHouse Cloud on AWS Database startup ClickHouse Announces PeerDB Acquistion ClickHouse Acquires PeerDB to Advance Postgres CDC Integration Solutions provided by Google News | Nubank released the licenses of its Datomic database Lucas Cavalcanti on Using Clojure, Microservices, Hexagonal Architecture and Public Cloud at Nubank Nubank acquires US company; PayPal studies cryptocurrencies Zoona Case Study Brazilian challenger Nubank acquires firm behind Clojure and Datomic provided by Google News | LokiJS - A JavaScript Database provided by Google News | AMD EPYC vs. Intel Xeon Cascadelake With Facebook's RocksDB Database Pliops Unveils Accelerated Key-Value Store That Boosts RocksDB Performance by 20x at OCP Global Summit Did Rockset Just Solve Real-Time Analytics? Meta’s Velox Means Database Performance Is Not Subject To Interpretation Facebook’s MyRocks Truly Rocks! provided by Google News | 2022 All O-Zone Football Team provided by Google News |
Share this page