DBMS > MongoDB vs. PostgreSQL vs. Redis vs. Tarantool
System Properties Comparison MongoDB vs. PostgreSQL vs. Redis vs. Tarantool
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | MongoDB Xexclude from comparison | PostgreSQL Xexclude from comparison | Redis Xexclude from comparison | Tarantool Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | One of the most popular document stores available both as a fully managed cloud service and for deployment on self-managed infrastructure | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | 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. | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | Key-value store Multiple data types and a rich set of operations, as well as configurable data expiration, eviction and persistence | Document store Key-value store Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | Document store with RedisJSON Graph DBMS with RedisGraph Spatial DBMS Search engine with RediSearch Time Series DBMS with RedisTimeSeries Vector DBMS | Spatial DBMS with Tarantool/GIS extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.mongodb.com | www.postgresql.org | redis.com redis.io | www.tarantool.io | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.mongodb.com/docs/manual | www.postgresql.org/docs | docs.redis.com/latest/index.html redis.io/docs | www.tarantool.io/en/doc | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | MongoDB, Inc | PostgreSQL Global Development Group www.postgresql.org/developer | Redis project core team, inspired by Salvatore Sanfilippo Development sponsored by Redis Inc. | VK | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2009 | 1989 1989: Postgres, 1996: PostgreSQL | 2009 | 2008 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 6.0.7, June 2023 | 16.2, February 2024 | 7.2.4, January 2024 | 2.10.0, May 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | 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 BSD | Open Source source-available extensions (modules), commercial licenses for Redis Enterprise | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no MongoDB available as DBaaS (MongoDB Atlas) | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | MongoDB Atlas: Global multi-cloud database with unmatched data distribution and mobility across AWS, Azure, and Google Cloud, built-in automation for resource and workload optimization, and so much more. | Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. | Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C | C | C and C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Solaris Windows | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | BSD Linux OS X Windows ported and maintained by Microsoft Open Technologies, Inc. | BSD Linux macOS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | 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. | yes | schema-free | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, decimal, boolean, date, object_id, geospatial | yes | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | string, double, decimal, uuid, integer, blob, boolean, datetime | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | yes specific XML-type available, but no XML query functionality. | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes with RediSearch module | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | Read-only SQL queries via the MongoDB Atlas SQL Interface | yes standard with numerous extensions | with RediSQL module | Full-featured ANSI SQL support | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | GraphQL HTTP REST Prisma proprietary protocol using JSON | ADO.NET JDBC native C library ODBC streaming API for large objects | proprietary protocol RESP - REdis Serialization Protocol | Open binary protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | 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 | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | 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 C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | JavaScript | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | Lua; Redis Functions coming in Redis 7 (slides and Github) | Lua, C and SQL stored procedures | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes in MongoDB Atlas only | yes | publish/subscribe channels provide some trigger functionality; RedisGears | yes, before/after data modification events, on replication events, client session events | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | 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. | partitioning by range, list and (since PostgreSQL 11) by hash | Sharding Automatic hash-based sharding with support for hash-tags for manual sharding | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-Source deployments with MongoDB Atlas Global Clusters Source-replica replication | Source-replica replication other methods possible by using 3rd party extensions | Multi-source replication with Redis Enterprise Pack Source-replica replication Chained replication is supported | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | through RedisGears | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency can be individually decided for each read operation Immediate Consistency default behaviour | Immediate Consistency | Eventual Consistency Causal consistency can be enabled in Active-Active databases Strong consistency with Redis Raft Strong eventual consistency with Active-Active | Casual consistency across sharding partitions Eventual consistency within replicaset partition when using asyncronous replication Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition when using Raft | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not used, however similar functionality with DBRef possible | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Multi-document ACID Transactions with snapshot isolation | ACID | Atomic execution of command blocks and scripts and optimistic locking | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes Data access is serialized by the server | yes, cooperative multitasking | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes optional, enabled by default | yes | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes, write ahead logging | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | yes | yes, full featured in-memory storage engine with persistence | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles | fine grained access rights according to SQL-standard | 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 | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MongoDB | PostgreSQL | Redis | Tarantool | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | MongoDB provides an integrated suite of cloud database and data services to accelerate... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Built around the flexible document data model and unified API, MongoDB is a developer... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | AI-enriched intelligent apps (Continental, Telefonica, Iron Mountain) Internet of... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | ADP, Adobe, Amadeus, AstraZeneca, Auto Trader, Barclays, BBVA, Bosch, Cisco, CERN,... » 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 Navicat for MongoDB gives you a highly effective GUI interface for MongoDB database management, administration and development. » more Studio 3T: The world's favorite IDE for working with MongoDB » more | Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more Redgate webinars: A series of key topics for new PostgreSQL users. » more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more Timescale: Calling all PostgreSQL users – the 2023 State of PostgreSQL survey is now open! Share your favorite extensions, preferred frameworks, community experiences, and more. Take the survey today! » more Fujitsu Enterprise Postgres: An Enterprise Grade PostgreSQL with the flexibility of a hybrid cloud solution combined with industry leading security, availability and performance. » more Instaclustr: Fully Hosted & Managed PostgreSQL » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more CYBERTEC is your professional partner in PostgreSQL topics for over 20 years. As our main aim is to be your single-source all-in-one IT service provider, we offer a wide range of products and services. Visit our website for more details. » more Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. » more pgDash: In-Depth PostgreSQL Monitoring. » more | Navicat for Redis: the award-winning Redis management tool with an intuitive and powerful graphical interface. » 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 Redisson PRO: The ultra-fast Redis Java Client. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MongoDB | PostgreSQL | Redis | Tarantool | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 2023 Snowflake is the DBMS of the Year 2022, defending the title from last year Snowflake is the DBMS of the Year 2021 | 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 | Data processing speed and reliability: in-memory synchronous replication Monitoring PostgreSQL with Redgate Monitor Redefining generative AI: Fireworks AI and MongoDB's collab MongoDB, Inc. (NASDAQ:MDB) Shares Acquired by Truist Financial Corp Build RAG applications with MongoDB Atlas, now available in Knowledge Bases for Amazon Bedrock | Amazon Web ... MongoDB Launches Program to Help Enterprises Implement GenAI MongoDB Launches 'One-Stop-Shop' Program For Building Advanced GenAI Applications provided by Google News Automatically Generate Types for Your PostgreSQL Database Baffle Delivers Enterprise-Grade Data Security for PostgreSQL on Amazon RDS and Amazon Aurora Introducing OCI Database with PostgreSQL: Completing Our Cloud Database Suite for Every Need Oracle Introduces PostgreSQL Running Native on OCI Your MySQL 5.7 and PostgreSQL 11 databases will be automatically enrolled into Amazon RDS Extended Support ... provided by Google News Linux Foundation marshals support for open source alternative to Redis Valkey: A Redis Fork With a Future Redis switches licenses, acquires Speedb to go beyond its core in-memory database Redis acquires storage engine startup Speedb to enhance its open-source database Redis moves to source-available licenses provided by Google News TaranHouse: New Big Data Warehouse Announced by Tarantool In-Memory Showdown: Redis vs. Tarantool Tarantool Announces New Enterprise Version With Enhanced Scaling and Monitoring Capabilities Deploying Tarantool Cartridge applications with zero effort (Part 1) Deploying Tarantool Cartridge applications with zero effort (Part 2) provided by Google News |
Share this page