DBMS > CouchDB vs. CrateDB vs. LevelDB vs. Microsoft Azure Cosmos DB vs. Tkrzw
System Properties Comparison CouchDB vs. CrateDB vs. LevelDB vs. Microsoft Azure Cosmos DB vs. Tkrzw
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" Xexclude from comparison | CrateDB Xexclude from comparison | LevelDB Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones. | Distributed Database based on Lucene | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | Globally distributed, horizontally scalable, multi-model database service | A concept of libraries, allowing an application program to store and query key-value pairs in a file. Successor of Tokyo Cabinet and Kyoto Cabinet | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store Spatial DBMS Search engine Time Series DBMS Vector DBMS | Key-value store | Document store Graph DBMS Key-value store Wide column store | Key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS using the Geocouch extension | Relational DBMS | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | couchdb.apache.org | cratedb.com | github.com/google/leveldb | azure.microsoft.com/services/cosmos-db | dbmx.net/tkrzw | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchdb.org/en/stable | cratedb.com/docs | github.com/google/leveldb/blob/main/doc/index.md | learn.microsoft.com/azure/cosmos-db | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Damien Katz, a former Lotus Notes developer | Crate | Microsoft | Mikio Hirabayashi | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2005 | 2013 | 2011 | 2014 | 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.3.3, December 2023 | 1.23, February 2021 | 0.9.3, August 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source | Open Source BSD | commercial | Open Source Apache Version 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | CrateDB Cloud: a distributed SQL database that spreads data and processing across an elastic cluster of shared nothing nodes. CrateDB Cloud enables data insights at scale on Microsoft Azure, AWS and Google Cloud Platform. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Erlang | Java | C++ | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Android BSD Linux OS X Solaris Windows | All Operating Systems, including Kubernetes with CrateDB Kubernetes Operator support | Illumos Linux OS X Windows | hosted | Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Flexible Schema (defined schema, partial schema, schema free) | schema-free | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | no | yes JSON types | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes via views | yes | no | yes All properties auto-indexed by default | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes, but no triggers and constraints, and PostgreSQL compatibility | no | SQL-like query language | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP/JSON API | ADO.NET JDBC ODBC PostgreSQL wire protocol Prometheus Remote Read/Write RESTful HTTP API | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | .NET Erlang Go community maintained client Java JavaScript (Node.js) community maintained client Perl community maintained client PHP Python R Ruby community maintained client Scala community maintained client | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | C++ Java Python Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions in JavaScript | user defined functions (Javascript) | no | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | no | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding improved architecture with release 2.0 | Sharding | none | Sharding Implicit feature of the cloud service | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Configurable replication on table/partition-level | none | yes Implicit feature of the cloud service | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Eventual Consistency Read-after-write consistency on record level | Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a single document possible | no unique row identifiers can be used for implementing an optimistic concurrency control strategy | no | Multi-item ACID transactions with snapshot isolation within a partition | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes strategy: optimistic locking | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes with automatic compression on writes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes using specific database classes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per database | rights management via user accounts | no | Access rights can be defined down to the item level | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | CrateDB | LevelDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | The enterprise database for time series, documents, and vectors. Distributed - Native... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Response time in milliseconds: e ven for complex ad-hoc queries. Massive scaling... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | IoT: accelerate your IIoT projects with CrateDB, delivering real-time analytics... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Across all continents, CrateDB is used by companies of all sizes to meet the most... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | The CrateDB open source project was started in 2013 Honorable Mention in 2021 Gartner®... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | See CrateDB pricing > » 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | CrateDB | LevelDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | Tkrzw Successor of Tokyo Cabinet and Kyoto Cabinet | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | How to Automate A Blog Post App Deployment With GitHub Actions, Node.js, CouchDB, and Aptible How to install the CouchDB NoSQL database on Debian Server 11 IBM Cloudant pulls plan to fund new foundational layer for CouchDB CouchDB 3.0 ends admin party era • DEVCLASS CouchDB 3.0 puts safety first provided by Google News | CrateDB Partners with HiveMQ to Deliver a Seamless Data Management Architecture for IoT CrateDB Announces Availability of CrateDB on Google Cloud Marketplace CrateDB Appoints Sergey Gerasimenko as New CTO How We Designed CrateDB as a Realtime SQL DBMS for the Internet of Things Real-Time Analytics Database Company CrateDB Names Lars Färnström as New CEO provided by Google News | LevelDB in Ruby — SitePoint Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs Pliops unveils XDP-Rocks for RocksDB – Blocks and Files XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook Rust-Based Info Stealers Abuse GitHub Codespaces provided by Google News | Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates General availability: Microsoft Entra ID integration with Azure Cosmos DB for PostgreSQL | Azure updates Azure Synapse Link for Cosmos DB: New Analytics Capabilities How to Migrate Azure Cosmos DB Databases | by Arwin Lashawn Azure Cosmos DB joins the AI toolchain provided by Google News |
Share this page