DBMS > Cachelot.io vs. Datomic vs. HarperDB vs. Percona Server for MongoDB vs. RocksDB
System Properties Comparison Cachelot.io vs. Datomic vs. HarperDB vs. Percona Server for MongoDB vs. RocksDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Cachelot.io Xexclude from comparison | Datomic Xexclude from comparison | HarperDB Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | RocksDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | In-memory caching system | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | Ultra-low latency distributed database with an intuitive REST API supporting NoSQL and SQL (including joins). Deployment of functions and databases simultaneously with a consolidated node-level architecture. | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | Embeddable persistent key-value store optimized for fast storage (flash and RAM) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Relational DBMS | Document store | Document store | Key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cachelot.io | www.datomic.com | www.harperdb.io | www.percona.com/mongodb/software/percona-server-for-mongodb | rocksdb.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | docs.harperdb.io/docs | docs.percona.com/percona-distribution-for-mongodb | github.com/facebook/rocksdb/wiki | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | HarperDB | Percona | Facebook, Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2015 | 2012 | 2017 | 2015 | 2013 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.7075, December 2023 | 3.1, August 2021 | 3.4.10-2.10, November 2017 | 9.2.1, May 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Simplified BSD License | commercial limited edition free | commercial free community edition available | Open Source GPL Version 2 | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Node.js | C++ | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | FreeBSD Linux OS X | All OS with a Java VM | Linux OS X | Linux | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | dynamic schema | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes JSON data types | yes | 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 | no | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like data manipulation statements | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Memcached protocol | RESTful HTTP API | JDBC ODBC React Hooks RESTful HTTP/JSON API WebSocket | proprietary protocol using JSON | C++ API Java API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ ColdFusion Erlang Java Lisp Lua OCaml OCaml Perl PHP Python Ruby | Clojure Java | .Net C C# C++ ColdFusion D Dart Delphi Erlang Go Haskell Java JavaScript (Node.js) Lisp MatLab Objective C Perl PHP PowerShell Prolog Python R Ruby Rust Scala Swift | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | C C++ Go Java Perl Python Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes Transaction Functions | Custom Functions since release 3.1 | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | By using transaction functions | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | none But extensive use of caching in the application peers | A table resides as a whole on one (or more) nodes in a cluster | Sharding | horizontal partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | none But extensive use of caching in the application peers | yes the nodes on which a table resides can be defined | Source-replica replication | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Immediate Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | Atomic execution of specific operations | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | no | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes, using LMDB | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes recommended only for testing and development | yes | yes via In-Memory Engine | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Access rights for users and roles | Access rights for users and roles | 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 | Speedb: A high performance RocksDB-compliant key-value store optimized for write-intensive workloads. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cachelot.io | Datomic | HarperDB | Percona Server for MongoDB | RocksDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Nubank buys firm behind Clojure programming language Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach James Dixon Imagines A Data Lake That Matters Zoona Case Study provided by Google News | Meet HarperDB, Winner of the Startups of the Year in Denver Startups of the Year 2023: Meet HarperDB - A Database and Application Development Platform Jaxon Repp on HarperDB Distributed Database Platform Unlocking immersive golfing experiences with AWS Wavelength | Amazon Web Services HarperDB: An underdog SQL / NoSQL database | ZDNET provided by Google News | MongoDB Performance Tuning How to Plan Your MongoDB Upgrade There are lots of ways to put a database in the cloud – here's what to consider Why Isn't the World Upgrading Its Databases? FerretDB goes GA: Gives you MongoDB, without the MongoDB... provided by Google News | Meta’s Velox Means Database Performance Is Not Subject To Interpretation Did Rockset Just Solve Real-Time Analytics? Linux 6.9 Drives AMD 4th Gen EPYC Performance Even Higher For Some Workloads Facebook's MyRocks Truly Rocks! The Journey to a Million Ops / Sec / Node in Venice provided by Google News |
Share this page