DBMS > EJDB vs. MongoDB vs. Redis vs. Riak KV vs. Vertica
System Properties Comparison EJDB vs. MongoDB vs. Redis vs. Riak KV vs. Vertica
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EJDB Xexclude from comparison | MongoDB Xexclude from comparison | Redis Xexclude from comparison | Riak KV Xexclude from comparison | Vertica OpenText™ Vertica™ Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | One of the most popular document stores available both as a fully managed cloud service and for deployment on self-managed infrastructure | Popular in-memory data platform used as a cache, message broker, and database that can be deployed on-premises, across clouds, and hybrid environments Redis focuses on performance so most of its design decisions prioritize high performance and very low latencies. | Distributed, fault tolerant key-value store | Cloud or off-cloud analytical database and query engine for structured and semi-structured streaming and batch data. Machine learning platform with built-in algorithms, data preparation capabilities, and model evaluation and management via SQL or Python. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Key-value store Multiple data types and a rich set of operations, as well as configurable data expiration, eviction and persistence | Key-value store with links between data sets and object tags for the creation of secondary indexes | Relational DBMS Column oriented | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS Search engine integrated Lucene index, currently in MongoDB Atlas only. Time Series DBMS Time Series Collections introduced in Release 5.0 Vector DBMS currently available in the MongoDB Atlas cloud service only | Document store with RedisJSON Graph DBMS with RedisGraph Spatial DBMS Search engine with RediSearch Time Series DBMS with RedisTimeSeries Vector DBMS | Spatial DBMS Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Softmotions/ejdb | www.mongodb.com | redis.com redis.io | www.vertica.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/Softmotions/ejdb/blob/master/README.md | www.mongodb.com/docs/manual | docs.redis.com/latest/index.html redis.io/docs | www.tiot.jp/riak-docs/riak/kv/latest | vertica.com/documentation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | MongoDB, Inc | Redis project core team, inspired by Salvatore Sanfilippo Development sponsored by Redis Inc. | OpenSource, formerly Basho Technologies | OpenText previously Micro Focus and Hewlett Packard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2009 | 2009 | 2009 | 2005 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 6.0.7, June 2023 | 7.2.4, January 2024 | 3.2.0, December 2022 | 12.0.3, January 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPLv2 | Open Source MongoDB Inc.'s Server Side Public License v1. Prior versions were published under GNU AGPL v3.0. Commercial licenses are also available. | Open Source source-available extensions (modules), commercial licenses for Redis Enterprise | Open Source Apache version 2, commercial enterprise edition | commercial Limited community edition free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no MongoDB available as DBaaS (MongoDB Atlas) | no | no | no on-premises, all major clouds - Amazon AWS, Microsoft Azure, Google Cloud Platform and containers | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. |
| Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | C++ | C | Erlang | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | Linux OS X Solaris Windows | BSD Linux OS X Windows ported and maintained by Microsoft Open Technologies, Inc. | Linux OS X | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free Although schema-free, documents of the same collection often follow the same structure. Optionally impose all or part of a schema by defining a JSON schema. | schema-free | schema-free | Yes, but also semi-structure/unstructured data storage, and complex hierarchical data (like Parquet) stored and/or queried. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, bool, date, object_id | yes string, integer, double, decimal, boolean, date, object_id, geospatial | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | no | 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 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes with RediSearch module | restricted | No Indexes Required. Different internal optimization strategy, but same functionality included. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | Read-only SQL queries via the MongoDB Atlas SQL Interface | with RediSQL module | no | Full 1999 standard plus machine learning, time series and geospatial. Over 650 functions. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | in-process shared library | GraphQL HTTP REST Prisma proprietary protocol using JSON | proprietary protocol RESP - REdis Serialization Protocol | HTTP API Native Erlang Interface | ADO.NET JDBC Kafka Connector ODBC RESTful HTTP API Spark Connector vSQL character-based, interactive, front-end utility | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | Actionscript unofficial driver C C# C++ Clojure unofficial driver ColdFusion unofficial driver D unofficial driver Dart unofficial driver Delphi unofficial driver Erlang Go Groovy unofficial driver Haskell Java JavaScript Kotlin Lisp unofficial driver Lua unofficial driver MatLab unofficial driver Perl PHP PowerShell unofficial driver Prolog unofficial driver Python R unofficial driver Ruby Rust Scala Smalltalk unofficial driver Swift | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | C# C++ Go Java JavaScript (Node.js) Perl PHP Python R | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | JavaScript | Lua; Redis Functions coming in Redis 7 (slides and Github) | Erlang | yes, PostgreSQL PL/pgSQL, with minor differences | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes in MongoDB Atlas only | publish/subscribe channels provide some trigger functionality; RedisGears | yes pre-commit hooks and post-commit hooks | yes, called Custom Alerts | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding Partitioned by hashed, ranged, or zoned sharding keys. Live resharding allows users to change their shard keys as an online operation with zero downtime. | Sharding Automatic hash-based sharding with support for hash-tags for manual sharding | Sharding no "single point of failure" | horizontal partitioning, hierarchical partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Multi-Source deployments with MongoDB Atlas Global Clusters Source-replica replication | Multi-source replication with Redis Enterprise Pack Source-replica replication Chained replication is supported | selectable replication factor | Multi-source replication One, or more copies of data replicated across nodes, or object-store used for repository. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | through RedisGears | yes | no Bi-directional Spark integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency can be individually decided for each read operation Immediate Consistency default behaviour | Eventual Consistency Causal consistency can be enabled in Active-Active databases Strong consistency with Redis Raft Strong eventual consistency with Active-Active | Eventual Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | no typically not used, however similar functionality with DBRef possible | no | no links between data sets can be stored | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | Multi-document ACID Transactions with snapshot isolation | Atomic execution of command blocks and scripts and optimistic locking | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | yes Data access is serialized by the server | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes optional, enabled by default | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes In-memory storage engine introduced with MongoDB version 3.2 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Access rights for users and roles | Access Control Lists (ACLs): redis.io/docs/management/security/acl LDAP and Role-Based Access Control (RBAC) for Redis Enterprise Mutual TLS authentication: redis.io/docs/management/security/encryption Password-based authentication | yes, using Riak Security | fine grained access rights according to SQL-standard; supports Kerberos, LDAP, Ident and hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | MongoDB | Redis | Riak KV | Vertica OpenText™ Vertica™ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | MongoDB provides an integrated suite of cloud database and data services to accelerate... » more | Deploy-anywhere database for large-scale analytical deployments. Deploy off-cloud,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Built around the flexible document data model and unified API, MongoDB is a developer... » more | Fast, scalable, and capable of high concurrency. Separation of compute/storage leverages... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | AI-enriched intelligent apps (Continental, Telefonica, Iron Mountain) Internet of... » more | Communication and network analytics, Embedded analytics, Fraud monitoring and Risk... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | ADP, Adobe, Amadeus, AstraZeneca, Auto Trader, Barclays, BBVA, Bosch, Cisco, CERN,... » more | Abiba Systems, Adform, adMarketplace, AmeriPride, Anritsu, AOL, Avito, Auckland Transport,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Hundreds of millions downloads, over 150,000+ Atlas clusters provisioned every month... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | MongoDB database server: Server-Side Public License (SSPL) . Commercial licenses... » more | Cost-based models and subscription-based models are both available. One license is... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for MongoDB gives you a highly effective GUI interface for MongoDB database management, administration and development. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Studio 3T: The world's favorite IDE for working with MongoDB » more | Redisson PRO: The ultra-fast Redis Java Client. » more Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Navicat for Redis: the award-winning Redis management tool with an intuitive and powerful graphical interface. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | MongoDB | Redis | Riak KV | Vertica OpenText™ Vertica™ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Snowflake is the DBMS of the Year 2021 PostgreSQL is the DBMS of the Year 2020 PostgreSQL is the DBMS of the Year 2018 | PostgreSQL is the DBMS of the Year 2018 MySQL, PostgreSQL and Redis are the winners of the March ranking MongoDB is the DBMS of the year, defending the title from last year | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Top MongoDB Interview Questions and Answers Loss-Making MongoDB, Inc. (NASDAQ:MDB) Expected To Breakeven In The Medium-Term MongoDB Furthers Commitment to Security and Compliance with New Industry Certifications MongoDB (NASDAQ:MDB) Shares Down 2.8% MongoDB Stock Sinks As Market Gains: Here's Why provided by Google News | Redis acquires storage engine startup Speedb to enhance its open-source database AWS announces vector search for Amazon MemoryDB for Redis (Preview) Boosting throughput for cloud databases Redis expands data management capabilities with Speedb acquisition – Blocks and Files Redis moves to source-available licenses provided by Google News | Basho Revamps Riak Open-Source Database Basho, Maker of Riak NoSQL Database, Raises $25M A Critique of Resizable Hash Tables: Riak Core & Random Slicing Riak NoSQL snapped up by Bet365 Basho distributes Riak to more customers - DCD provided by Google News | Stonebraker Seeks to Invert the Computing Paradigm with DBOS How Embedded Analytics Help ISVs Overcome Challenges OpenText expands enterprise portfolio with AI and Micro Focus integrations Postgres pioneer Michael Stonebraker promises to upend the database once more OpenText integrates Micro Focus tech through Cloud Editions 23.3 provided by Google News |
Share this page