DBMS > Couchbase vs. Microsoft Azure Data Explorer vs. PouchDB vs. RavenDB vs. Riak KV
System Properties Comparison Couchbase vs. Microsoft Azure Data Explorer vs. PouchDB vs. RavenDB vs. Riak KV
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Couchbase Originally called Membase Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | PouchDB Xexclude from comparison | RavenDB Xexclude from comparison | Riak KV 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 | Fully managed big data interactive analytics platform | JavaScript DBMS with an API inspired by CouchDB | Open Source Operational and Transactional Enterprise NoSQL Document Database | Distributed, fault tolerant key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS column oriented | Document store | Document store | Key-value store with links between data sets and object tags for the creation of secondary indexes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 If a column is of type dynamic docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/dynamic then it's possible to add arbitrary JSON documents in this cell Event Store this is the general usage pattern at Microsoft. Billing, Logs, Telemetry events are stored in ADX and the state of an individual entity is defined by the arg_max(timestamps) Spatial DBMS Search engine support for complex search expressions docs.microsoft.com/en-us/azure/kusto/query/parseoperator FTS, Geospatial docs.microsoft.com/en-us/azure/kusto/query/geo-point-to-geohash-function distributed search -> ADX acts as a distributed search engine Time Series DBMS see docs.microsoft.com/en-us/azure/data-explorer/time-series-analysis | Graph DBMS Spatial DBMS Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.couchbase.com | azure.microsoft.com/services/data-explorer | pouchdb.com | ravendb.net | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchbase.com | docs.microsoft.com/en-us/azure/data-explorer | pouchdb.com/guides | ravendb.net/docs | www.tiot.jp/riak-docs/riak/kv/latest | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Couchbase, Inc. | Microsoft | Apache Software Foundation | Hibernating Rhinos | OpenSource, formerly Basho Technologies | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2011 | 2019 | 2012 | 2010 | 2009 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | cloud service with continuous releases | 7.1.1, June 2019 | 5.4, July 2022 | 3.2.0, December 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial | Open Source | Open Source AGPL version 3, commercial license available | Open Source Apache version 2, commercial enterprise edition | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | 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++, Go and Erlang | JavaScript | C# | Erlang | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | hosted | server-less, requires a JavaScript environment (browser, Node.js) | Linux macOS Raspberry Pi Windows | Linux OS X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Fixed schema with schema-less datatypes (dynamic) | schema-free | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | no | no | 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. | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | all fields are automatically indexed | yes via views | yes | restricted | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | Kusto Query Language (KQL), SQL subset | no | SQL-like query language (RQL) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | HTTP REST only for PouchDB Server JavaScript 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 | HTTP API Native Erlang Interface | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | .Net Go Java JavaScript (Node.js) PowerShell Python R | JavaScript | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | Yes, possible languages: KQL, Python, R | View functions in JavaScript | yes | Erlang | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via the TAP protocol | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | yes | yes | yes pre-commit hooks and post-commit hooks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Automatic Sharding | Sharding Implicit feature of the cloud service | Sharding with a proxy-based framework, named couchdb-lounge | Sharding | Sharding no "single point of failure" | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication including cross data center replication Source-replica replication | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | Multi-source replication | selectable replication factor | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | Spark connector (open source): github.com/Azure/azure-kusto-spark | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Eventual Consistency Immediate Consistency | Eventual 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. | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no links between data sets can be stored | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | no | ACID, Cluster-wide transaction available | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Ephemeral buckets | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | Azure Active Directory Authentication | no | Authorization levels configured per client per database | yes, using Riak Security | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Couchbase Originally called Membase | Microsoft Azure Data Explorer | PouchDB | RavenDB | Riak KV | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | New kids on the block: database management systems implemented in JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Database company Couchbase cruises to another solid earnings and revenue beat A Closer Look at 9 Analyst Recommendations For Couchbase Couchbase, Inc. (NASDAQ:BASE) Shares Slammed 29% But Getting In Cheap Might Be Difficult Regardless Couchbase (NASDAQ:BASE) Posts Better-Than-Expected Sales In Q1, Next Quarter's Growth Looks Optimistic Couchbase, Inc. (BASE) Tops Q1 EPS by 5c; offers outlook provided by Google News | We’re retiring Azure Time Series Insights on 7 July 2024 – transition to Azure Data Explorer | Azure updates Update records in a Kusto Database (public preview) | Azure updates Public Preview: Azure Data Explorer connector for Apache Flink | Azure updates Announcing General Availability to migrate Virtual Network injected Azure Data Explorer Cluster to Private Endpoints ... New Features for graph-match KQL Operator: Enhanced Pattern Matching and Cycle Control | Azure updates provided by Google News | Building an Offline First App with PouchDB — SitePoint Create Offline Web Apps Using Service Workers & PouchDB — SitePoint Getting Started with PouchDB Client-Side JavaScript Database — SitePoint 3 Reasons To Think Offline First Offline-first web and mobile apps: Top frameworks and components provided by Google News | RavenDB Launches Version 6.0 Lightning Fast Queries, Data Integrations, Corax Indexing Engine, and Sharding Install the NoSQL RavenDB Data System RavenDB Adds Graph Queries RavenDB Welcomes David Baruc as Chief Revenue Officer: Seasoned Tech Leader to Drive Global Sales and ... Review: NoSQL database RavenDB provided by Google News | Basho Revamps Riak Open-Source Database A Critique of Resizable Hash Tables: Riak Core & Random Slicing Riak NoSQL snapped up by Bet365 Basho to Bolster Riak with DB Plug-Ins Basho Advances NoSQL Riak Enterprise 2.0 With Search, Advanced Data Types provided by Google News |
Share this page