DBMS > Couchbase vs. Dgraph vs. EJDB vs. Microsoft Azure Cosmos DB vs. OceanBase
System Properties Comparison Couchbase vs. Dgraph vs. EJDB vs. Microsoft Azure Cosmos DB vs. OceanBase
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Couchbase Originally called Membase Xexclude from comparison | Dgraph Xexclude from comparison | EJDB Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | OceanBase Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Distributed and scalable native Graph DBMS | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | Globally distributed, horizontally scalable, multi-model database service | A distributed, high available RDBMS compatible with Oracle and MySQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Graph DBMS | Document store | Document store Graph DBMS Key-value store Wide column store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Key-value store originating from the former Membase product and supporting the Memcached protocol Spatial DBMS using the Geocouch extension Search engine Time Series DBMS Vector DBMS | Spatial DBMS | Document store Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.couchbase.com | dgraph.io | github.com/Softmotions/ejdb | azure.microsoft.com/services/cosmos-db | en.oceanbase.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchbase.com | dgraph.io/docs | github.com/Softmotions/ejdb/blob/master/README.md | learn.microsoft.com/azure/cosmos-db | en.oceanbase.com/docs/oceanbase-database | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Couchbase, Inc. | Dgraph Labs, Inc. | Softmotions | Microsoft | OceanBase previously Alibaba and Ant Group | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2011 | 2016 | 2012 | 2014 | 2010 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | 4.3.0, April 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Business Source License (BSL 1.1); Commercial licenses also available | Open Source Apache 2.0 | Open Source GPLv2 | commercial | Open Source Commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C, C++, Go and Erlang | Go | C | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux OS X Windows | server-less | hosted | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes string, integer, double, bool, date, object_id | yes JSON types | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | no | yes All properties auto-indexed by default | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | no | no | SQL-like query language | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | GraphQL query language gRPC (using protocol buffers) API HTTP API | in-process shared library | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | JDBC ODBC ODP.NET Oracle Call Interface (OCI) Proprietary native API Table API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | C# C++ Go Java JavaScript (Node.js) PHP Python Ruby | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | Ada in MySQL-compatible model C in Oracle- and MySQL- compatible models C++ in Oracle- and MySQL- compatible models D in MySQL-compatible model Delphi in MySQL-compatible model Eiffel in MySQL-compatible model Erlang in MySQL-compatible model Haskell in MySQL-compatible model Java in Oracle- and MySQL- compatible models JavaScript (Node.js) in MySQL-compatible model Objective-C in MySQL-compatible model OCaml in MySQL-compatible model Perl in MySQL-compatible model PHP in MySQL-compatible model Python in MySQL-compatible model Ruby in MySQL-compatible model Scheme in MySQL-compatible model Tcl in MySQL-compatible model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | no | no | JavaScript | PL/SQL in oracle-compatible mode, MySQL Stored Procedure in mysql-compatible mode | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via the TAP protocol | no | no | JavaScript | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Automatic Sharding | yes | none | Sharding Implicit feature of the cloud service | horizontal partitioning (by hash, key, range, range columns, list, and list columns) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication including cross data center replication Source-replica replication | Synchronous replication via Raft | none | yes Implicit feature of the cloud service | Multi-source replication using Paxos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Immediate Consistency selectable on a per-operation basis | 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 typically not needed, however similar functionality with collection joins possible | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | no | Multi-item ACID transactions with snapshot isolation within a partition | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes Read/Write Locking | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Ephemeral buckets | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | no Planned for future releases | no | Access rights can be defined down to the item level | Access rights for users, groups and roles according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Couchbase Originally called Membase | Dgraph | EJDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | OceanBase | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | A Closer Look at 9 Analyst Recommendations For Couchbase Database company Couchbase cruises to another solid earnings and revenue beat Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase, Inc. (NASDAQ:BASE) Shares Slammed 29% But Getting In Cheap Might Be Difficult Regardless Couchbase (NASDAQ:BASE) Price Target Lowered to $30.00 at DA Davidson provided by Google News | Dgraph on AWS: Setting up a horizontally scalable graph database | Amazon Web Services Popular Open Source GraphQL Company Dgraph Secures $6M in Seed Round with New Leadership Dgraph launches Slash GraphQL, a GraphQL-native database Backend-as-a-Service Dgraph Raises $6M in Seed Funding Dgraph Rises to the Top Graph Database on GitHub With 11 G2 Badges and 11M Downloads provided by Google News | Public Preview: DiskANN vector indexing and search in Azure Cosmos DB NoSQL | Azure updates Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public Preview: vCore-based Azure Cosmos DB for MongoDB cross-region disaster recovery (DR) | Azure updates Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates Public preview: Filtered vector search in vCore-based Azure Cosmos DB for MongoDB | Azure updates provided by Google News | OceanBase Inks Agreement with NTU Singapore in Database Optimization and Green Computing Advancements OceanBase Recognized as an Asia/Pacific Customers' Choice in the Gartner® Peer Insights™ Voice of the Customer ... Ant Group Will Cut Foreign Investors Out of Fast-Growing Database Business How Southeast Asia's Leading e-Wallets Saved Up to 40% in Database Costs - Fintech Singapore Alibaba's OceanBase distributed database aims at markets outside China provided by Google News |
Share this page