DBMS > KeyDB vs. MongoDB vs. Postgres-XL vs. Sphinx vs. Typesense
System Properties Comparison KeyDB vs. MongoDB vs. Postgres-XL vs. Sphinx vs. Typesense
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | KeyDB Xexclude from comparison | MongoDB Xexclude from comparison | Postgres-XL Xexclude from comparison | Sphinx Xexclude from comparison | Typesense Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | One of the most popular document stores available both as a fully managed cloud service and for deployment on self-managed infrastructure | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | Open source search engine for searching in data from different sources, e.g. relational databases | A typo-tolerant, in-memory search engine optimized for instant search-as-you-type experiences and developer productivity | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Document store | Relational DBMS | Search engine | Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Snapchat/KeyDB keydb.dev | www.mongodb.com | www.postgres-xl.org | sphinxsearch.com | typesense.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.keydb.dev | www.mongodb.com/docs/manual | www.postgres-xl.org/documentation | sphinxsearch.com/docs | typesense.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | EQ Alpha Technology Ltd. | MongoDB, Inc | Sphinx Technologies Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2019 | 2009 | 2014 since 2012, originally named StormDB | 2001 | 2015 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 7.0.5, January 2024 | 10 R1, October 2018 | 3.5.1, February 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD-3 | 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 Mozilla public license | Open Source GPL version 2, commercial licence available | Open Source GPL V3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | 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. |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C++ | C | C++ | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | Linux OS X Solaris Windows | Linux macOS | FreeBSD Linux NetBSD OS X Solaris Windows | 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. | yes | yes | schema-free pre-defined schema optional | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes string, integer, double, decimal, boolean, date, object_id, geospatial | yes | 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 | yes XML type, but no XML query functionality | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes by using the Redis Search module | yes | yes | yes full-text index on all search fields | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | Read-only SQL queries via the MongoDB Atlas SQL Interface | yes distributed, parallel query execution | SQL-like query language (SphinxQL) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol RESP - REdis Serialization Protoco | GraphQL HTTP REST Prisma proprietary protocol using JSON | ADO.NET JDBC native C library ODBC streaming API for large objects | Proprietary protocol | RESTful HTTP API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | 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 | 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 Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | .Net community maintained Clojure community maintained Dart community maintained Go community maintained Java community maintained JavaScript Perl community maintained PHP Python Ruby Rust community maintained Swift community maintained | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Lua | JavaScript | user defined functions | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes in MongoDB Atlas only | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | 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. | horizontal partitioning | Sharding Partitioning is done manually, search queries against distributed index is supported | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-Source deployments with MongoDB Atlas Global Clusters Source-replica replication | none | Multi-source replication using RAFT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Strong eventual consistency with CRDTs | Eventual Consistency can be individually decided for each read operation Immediate Consistency default behaviour | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no typically not used, however similar functionality with DBRef possible | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Optimistic locking, atomic execution of commands blocks and scripts | Multi-document ACID Transactions with snapshot isolation | ACID MVCC | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes optional, enabled by default | yes | yes The original contents of fields are not stored in the Sphinx index. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes In-memory storage engine introduced with MongoDB version 3.2 | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | simple password-based access control and ACL | Access rights for users and roles | fine grained access rights according to SQL-standard | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KeyDB | MongoDB | Postgres-XL | Sphinx | Typesense | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KeyDB | MongoDB | Postgres-XL | Sphinx | Typesense | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | The DB-Engines ranking includes now search engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Snap snaps up database developer KeyDB to make its infrastructure more snappy Introducing Garnet – an open-source, next-generation, faster cache-store for accelerating applications and services Microsoft open-sources unique “Garnet” cache-store; a Redis rival? Dragonfly 0.13 Database Adds Experimental SSD-Based Data Tiering, More SIMD Work How to Use an API Key or Access Token to Connect to IBM Db2 on Cloud provided by Google News | MongoDB’s Rick Houlihan talks prioritizing user experience in digital services MongoDB director sells over $400k in company stock MongoDB's CPO On AI And Developer Focused Data Technologies: Tech Disruptors MongoDB, Inc. Announces Second Quarter Fiscal 2025 Financial Results Better Database Stock: Oracle vs. MongoDB provided by Google News | Switching From Sphinx to MkDocs Documentation — What Did I Gain and Lose? Manticore is a Faster Alternative to Elasticsearch in C++ Beyond the Concert Hall: 5 Organizations Making a Difference in Classical Music in 2018 Here’s Why Russia Is Cracking Down on Google The Pirate Bay was recently down for over a week due to a DDoS attack provided by Google News | Laravel Scout Adds Typesense, A Lightening-fast Open-source Search Building fast, fuzzy site search with Laravel and Typesense China win second Challenger round 5 Recipe Search Engines to Cook Based on Time, Budget, & Ingredients - MUO Spain plans Six Nations alternative provided by Google News |
Share this page