DBMS > Apache Impala vs. Couchbase vs. Firebase Realtime Database vs. NuoDB vs. ToroDB
System Properties Comparison Apache Impala vs. Couchbase vs. Firebase Realtime Database vs. NuoDB vs. ToroDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Impala Xexclude from comparison | Couchbase Originally called Membase Xexclude from comparison | Firebase Realtime Database Xexclude from comparison | NuoDB Xexclude from comparison | ToroDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ToroDB seems to be discontinued. Therefore it is excluded from the DB-Engines Ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Analytic DBMS for Hadoop | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | NuoDB is a webscale distributed database that supports SQL and ACID transactions | A MongoDB-compatible JSON document store, built on top of PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Document store | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | impala.apache.org | www.couchbase.com | firebase.google.com/products/realtime-database | www.3ds.com/nuodb-distributed-sql-database | github.com/torodb/server | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | impala.apache.org/impala-docs.html | docs.couchbase.com | firebase.google.com/docs/database | doc.nuodb.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Cloudera | Couchbase, Inc. | Google acquired by Google 2014 | Dassault Systèmes originally NuoDB, Inc. | 8Kdata | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2011 | 2012 | 2013 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.0, June 2022 | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial | commercial limited edition free | Open Source AGPL-V3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C, C++, Go and Erlang | C++ | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | Linux OS X Windows | hosted | hosted Amazon EC2, Windows Azure, SoftLayer Linux OS X Windows | All OS with a Java 7 VM | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | yes string, integer, double, boolean, date, object_id | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like DML and DDL statements | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | Android iOS JavaScript API RESTful HTTP API | ADO.NET JDBC ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | All languages supporting JDBC/ODBC | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | Java JavaScript Objective-C | .Net C C++ Go Java JavaScript JavaScript (Node.js) PHP Python Ruby | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes user defined functions and integration of map-reduce | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | limited functionality with using 'rules' | Java, SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes via the TAP protocol | Callbacks are triggered when data changes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Automatic Sharding | data is dynamically stored/cached on the nodes where it is read/written | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | Multi-source replication including cross data center replication Source-replica replication | yes Managed transparently by NuoDB | Source-replica replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes query execution via MapReduce | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Immediate Consistency | Eventual Consistency Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | yes | ACID tunable commit protocol | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes MVCC | 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 Temporary table | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Apache Sentry and Kerberos | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | yes, based on authentication and database rules | Standard SQL roles/ privileges, Administrative Users | Access rights for users and roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Impala | Couchbase Originally called Membase | Firebase Realtime Database | NuoDB | ToroDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Cloud-based DBMS's popularity grows at high rates | Meet some database management systems you are likely to hear more about in the future | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Cloudera creates observability tool to help enterprises manage cloud costs Apache Impala 4 Supports Operator Multi-Threading Apache Impala becomes Top-Level Project Cloudera Bringing Impala to AWS Cloud Apache Doris just 'graduated': Why care about this SQL data warehouse provided by Google News | With 67% ownership in Couchbase, Inc. (NASDAQ:BASE), institutional investors have a lot riding on the business Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase's revenue grows 20% and its stock rises in extended trading Couchbase Server and Capella to gain vector support Q4 Earnings Highs And Lows: Couchbase (NASDAQ:BASE) Vs The Rest Of The Data Storage Stocks provided by Google News | Realtime vs Cloud Firestore: Which Firebase Database to go? Don't be like these 900+ websites and expose millions of passwords via Firebase Atos cybersecurity blog: Misconfigured Firebase: A real-time cyber threat Hundreds of sites misconfigured Firebase security rules, exposing a total of 125 million pieces of sensitive information Google Firebase may have exposed 125M records from misconfigurations provided by Google News | Paul DiLaura of Dassault Systemes Joins NuoDB Board of Directors Dassault Systèmes Announces the Acquisition of NuoDB, a Cloud-Native Distributed SQL Database Leader Paul DiLaura of Dassault Systemes Joins NuoDB Board of Directors Deploy the NuoDB Database in Docker Containers NuoDB set to improve distributed SQL performance provided by Google News |
Share this page