DBMS > Badger vs. Couchbase vs. Oracle vs. RethinkDB vs. Yaacomo
System Properties Comparison Badger vs. Couchbase vs. Oracle vs. RethinkDB vs. Yaacomo
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Badger Xexclude from comparison | Couchbase Originally called Membase Xexclude from comparison | Oracle Xexclude from comparison | RethinkDB Xexclude from comparison | Yaacomo Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Yaacomo seems to be discontinued and is removed from the DB-Engines ranking | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An embeddable, persistent, simple and fast Key-Value Store, written purely in Go. | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Widely used RDBMS | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | OpenCL based in-memory RDBMS, designed for efficiently utilizing the hardware via parallel computing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Document store | Relational DBMS | Document 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 | Document store Graph DBMS with Oracle Spatial and Graph RDF store with Oracle Spatial and Graph Spatial DBMS with Oracle Spatial and Graph Vector DBMS since Oracle 23 | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/dgraph-io/badger | www.couchbase.com | www.oracle.com/database | rethinkdb.com | yaacomo.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | godoc.org/github.com/dgraph-io/badger | docs.couchbase.com | docs.oracle.com/en/database | rethinkdb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | DGraph Labs | Couchbase, Inc. | Oracle | The Linux Foundation since July 2017 | Q2WEB GmbH | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2011 | 1980 | 2009 | 2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | 23c, September 2023 | 2.4.1, August 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0 | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial restricted free version is available | Open Source Apache Version 2 | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | C, C++, Go and Erlang | C and C++ | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Solaris Windows | Linux OS X Windows | AIX HP-UX Linux OS X Solaris Windows z/OS | Linux OS X Windows | Android Linux Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes Schemaless in JSON and XML columns | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes | yes string, binary, float, bool, date, geometry | 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 | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | yes with proprietary extensions | no | 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 | JDBC ODBC ODP.NET Oracle Call Interface (OCI) | JDBC ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | C C# C++ Clojure Cobol Delphi Eiffel Erlang Fortran Groovy Haskell Java JavaScript Lisp Objective C OCaml Perl PHP Python R Ruby Scala Tcl Visual Basic | C community-supported driver C# community-supported driver C++ community-supported driver Clojure community-supported driver Dart community-supported driver Erlang community-supported driver Go community-supported driver Haskell community-supported driver Java official driver JavaScript (Node.js) official driver Lisp community-supported driver Lua community-supported driver Objective-C community-supported driver Perl community-supported driver PHP community-supported driver Python official driver Ruby official driver Scala community-supported driver | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | PL/SQL also stored procedures in Java possible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes via the TAP protocol | yes | Client-side triggers through changefeeds | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Automatic Sharding | Sharding, horizontal partitioning | Sharding range based | horizontal partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Multi-source replication including cross data center replication Source-replica replication | Multi-source replication Source-replica replication | Source-replica replication | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no can be realized in PL/SQL | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID isolation level can be parameterized | Atomic single-document operations | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes MVCC based | 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. | no | yes Ephemeral buckets | yes Version 12c introduced the new option 'Oracle Database In-Memory' | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | fine grained access rights according to SQL-standard | yes users and table-level permissions | fine grained access rights 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 | Devart ODBC driver for Oracle accesses Oracle databases from ODBC-compliant reporting, analytics, BI, and ETL tools on both 32 and 64-bit Windows, macOS, and Linux. » more Navicat for Oracle improves the efficiency and productivity of Oracle developers and administrators with a streamlined working environment. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Badger | Couchbase Originally called Membase | Oracle | RethinkDB | Yaacomo | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | MySQL is the DBMS of the Year 2019 The struggle for the hegemony in Oracle's database empire Architecting eCommerce Platforms for Zero Downtime on Black Friday and Beyond | Meet some database management systems you are likely to hear more about in the future | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Conferences, events and webinars | Oracle Cloud World | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | 11 Analysts Have This To Say About Couchbase Couchbase (NASDAQ:BASE) Receives New Coverage from Analysts at UBS Group Database software company Couchbase valued at nearly $1.2 billion in Nasdaq debut Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase executive Margaret Chow sells over $137k in stock provided by Google News | Understanding the different Oracle Database options under the OCI-Microsoft Azure partnership Announcing Oracle Database 23ai : General Availability Oracle Graph Learning Path Oracle Goes for the Kill with Multifaceted New AI Database Oracle AI Database Spells Big Trouble for Single-Function Competitors provided by Google News | MongoDB: The Popular Database for IoT How to Use RethinkDB with Node.js Applications — SitePoint Stripe acquires team behind NoSQL database startup RethinkDB RethinkDB is dead, and MongoDB isn't what killed it How to deploy RethinkDB using Docker provided by Google News |
Share this page