DBMS > LokiJS vs. Microsoft Azure Cosmos DB vs. MySQL vs. RethinkDB vs. VoltDB
System Properties Comparison LokiJS vs. Microsoft Azure Cosmos DB vs. MySQL vs. RethinkDB vs. VoltDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | LokiJS Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | MySQL Xexclude from comparison | RethinkDB Xexclude from comparison | VoltDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | In-memory JavaScript DBMS | Globally distributed, horizontally scalable, multi-model database service | Widely used open source RDBMS | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | Distributed In-Memory NewSQL RDBMS Used for OLTP applications with a high frequency of relatively simple transactions, that can hold all their data in memory | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store Graph DBMS Key-value store Wide column store | Relational DBMS Key/Value like access via memcached API | Document store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store Spatial DBMS | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/techfort/LokiJS | azure.microsoft.com/services/cosmos-db | www.mysql.com | rethinkdb.com | www.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | techfort.github.io/LokiJS | learn.microsoft.com/azure/cosmos-db | dev.mysql.com/doc | rethinkdb.com/docs | docs.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | The Linux Foundation since July 2017 | VoltDB Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2014 | 1995 | 2009 | 2010 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 9.0.0, July 2024 | 2.4.1, August 2020 | 11.3, April 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source | commercial | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source Apache Version 2 | Open Source AGPL for Community Edition, commercial license for Enterprise, AWS, and Pro Editions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | JavaScript | C and C++ | C++ | Java, C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less, requires a JavaScript environment (browser, Node.js) | hosted | FreeBSD Linux OS X Solaris Windows | Linux OS X Windows | Linux OS X for development | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes JSON types | yes | yes string, binary, float, bool, date, geometry | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes via views | yes All properties auto-indexed by default | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like query language | yes with proprietary extensions | no | yes only a subset of SQL 99 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JavaScript API | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | ADO.NET JDBC ODBC Proprietary native API | Java API JDBC RESTful HTTP/JSON API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | JavaScript | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | C community-supported driver C# community-supported driver C++ community-supported driver Clojure community-supported driver Dart community-supported driver Erlang community-supported driver Go community-supported driver Haskell community-supported driver Java official driver JavaScript (Node.js) official driver Lisp community-supported driver Lua community-supported driver Objective-C community-supported driver Perl community-supported driver PHP community-supported driver Python official driver Ruby official driver Scala community-supported driver | C# C++ Erlang not officially supported Go Java JavaScript Node.js PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions in JavaScript | JavaScript | yes proprietary syntax | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | JavaScript | yes | Client-side triggers through changefeeds | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding Implicit feature of the cloud service | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | Sharding range based | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | yes Implicit feature of the cloud service | Multi-source replication Source-replica replication | Source-replica replication | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes not for MyISAM storage engine | no | no FOREIGN KEY constraints are not supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a single collection possible | Multi-item ACID transactions with snapshot isolation within a partition | ACID not for MyISAM storage engine | Atomic single-document operations | ACID Transactions are executed single-threaded within stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes table locks or row locks depending on storage engine | yes MVCC based | yes Data access is serialized by the server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | yes | yes | yes Snapshots and command logging | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Access rights can be defined down to the item level | Users with fine-grained authorization concept no user groups or roles | yes users and table-level permissions | Users and roles with access to stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | CData: Connect to Big Data & NoSQL through standard Drivers. » more | CData: Connect to Big Data & NoSQL through standard Drivers. » more Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LokiJS | Microsoft Azure Cosmos DB former name was Azure DocumentDB | MySQL | RethinkDB | VoltDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | Meet some database management systems you are likely to hear more about in the future | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | LokiJS - A JavaScript Database provided by Google News | Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public Preview: DiskANN vector indexing and search in Azure Cosmos DB NoSQL Public preview: Filtered vector search in vCore-based Azure Cosmos DB for MongoDB Public Preview: vCore-based Azure Cosmos DB for MongoDB cross-region disaster recovery (DR) General availability: Azure Cosmos DB for PostgreSQL geo-redundant backup and restore provided by Google News | Learn how Presence migrated off a monolithic Amazon RDS for MySQL instance, with near-zero downtime, using replication filters HeatWave MySQL – New Capabilities for OLTP Workloads Older PHP & MySQL no longer working in Later Versions How to get started with MySQL Proposal Seeks To Replace MySQL With MariaDB By Default For Ubuntu 25.04 provided by Google News | An introduction to building realtime apps with RethinkDB Stripe acquires team behind NoSQL database startup RethinkDB How to Use RethinkDB with Node.js Applications How to deploy RethinkDB using Docker Installing and Using RethinkDB on Ubuntu provided by Google News | VoltDB Launches Active(N) Lossless Cross Data Center Replication Unveiling Volt Active Data’s game-changing approach to limitless app performance VoltDB Aims for Fast Big Data Development VoltDB Announces Key New Hires Solutions Review Sits Down with VoltDB CEO David Flower provided by Google News |
Share this page