DBMS > IBM Cloudant vs. KeyDB vs. Microsoft Azure Cosmos DB vs. RavenDB vs. TigerGraph
System Properties Comparison IBM Cloudant vs. KeyDB vs. Microsoft Azure Cosmos DB vs. RavenDB vs. TigerGraph
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | IBM Cloudant Xexclude from comparison | KeyDB Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | RavenDB Xexclude from comparison | TigerGraph Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Database as a Service offering based on Apache CouchDB | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | Globally distributed, horizontally scalable, multi-model database service | Open Source Operational and Transactional Enterprise NoSQL Document Database | A complete, distributed, parallel graph computing platform supporting web-scale data analytics in real-time | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Key-value store | Document store Graph DBMS Key-value store Wide column store | Document store | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Graph DBMS Spatial DBMS Time Series DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.ibm.com/products/cloudant | github.com/Snapchat/KeyDB keydb.dev | azure.microsoft.com/services/cosmos-db | ravendb.net | www.tigergraph.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cloud.ibm.com/docs/Cloudant | docs.keydb.dev | learn.microsoft.com/azure/cosmos-db | ravendb.net/docs | docs.tigergraph.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | IBM, Apache Software Foundation IBM acquired Cloudant in February 2014 | EQ Alpha Technology Ltd. | Microsoft | Hibernating Rhinos | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2019 | 2014 | 2010 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.4, July 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | Open Source BSD-3 | commercial | Open Source AGPL version 3, commercial license available | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Erlang | C++ | C# | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | Linux | hosted | Linux macOS Raspberry Pi Windows | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes JSON types | 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 | yes | yes by using the Redis Search module | yes All properties auto-indexed by default | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like query language | SQL-like query language (RQL) | SQL-like query language (GSQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP/JSON API | Proprietary protocol RESP - REdis Serialization Protoco | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | .NET Client API F# Client API Go Client API Java Client API NodeJS Client API PHP Client API Python Client API RESTful HTTP API | GSQL (TigerGraph Query Language) Kafka RESTful HTTP/JSON API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# Java JavaScript Objective-C PHP Ruby | 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 | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | C++ Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions (Map-Reduce) in JavaScript | Lua | JavaScript | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | JavaScript | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding Implicit feature of the cloud service | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | yes Implicit feature of the cloud service | Multi-source replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Eventual Consistency Strong eventual consistency with CRDTs | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Default ACID transactions on the local node (eventually consistent across the cluster). Atomic operations with cluster-wide ACID transactions. Eventual consistency for indexes and full-text search indexes. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | yes Relationships in graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a document possible | Optimistic locking, atomic execution of commands blocks and scripts | Multi-item ACID transactions with snapshot isolation within a partition | ACID, Cluster-wide transaction available | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Optimistic locking | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per database | simple password-based access control and ACL | Access rights can be defined down to the item level | Authorization levels configured per client per database | Role-based access control | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
IBM Cloudant | KeyDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | RavenDB | TigerGraph | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Cloudant Best (and Worst) Practices — Part 1 Intro to Enterprise Cloud Storage: How to Set Up a Cloudant Database IBM Expands Cloud Database Services with Kubernetes IBM Code Engine and IBM Cloudant: Serverless Data and Infrastructure IBM to Purchase Cloudant Database as a service (DBaaS) Provider provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Microsoft open-sources Garnet cache-store -- a Redis rival? Redis 6 arrives with multithreading for faster I/O provided by Google News | General Availability: Data API builder | Azure updates Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates Microsoft Ships Data API Builder for Azure SQL Databases General availability: Microsoft Entra ID integration with Azure Cosmos DB for PostgreSQL | Azure updates provided by Google News | RavenDB Welcomes David Baruc as Chief Revenue Officer: Seasoned Tech Leader to Drive Global Sales and ... Install the NoSQL RavenDB Data System Oren Eini on RavenDB, Including Consistency Guarantees and C# as the Implementation Language RavenDB Adds Graph Queries How I Created a RavenDB Python Client provided by Google News | TigerGraph Unveils CoPilot, Version 4.0, and New CEO How TigerGraph CoPilot enables graph-augmented AI TigerGraph unveils GenAI assistant, introduces new CEO Aerospike takes on Neo4j and TigerGraph with launch of graph database New TigerGraph CEO Refocuses Efforts on Enterprise Customers provided by Google News |
Share this page