DBMS > Apache Impala vs. Drizzle vs. IBM Cloudant vs. KeyDB vs. Oracle NoSQL
System Properties Comparison Apache Impala vs. Drizzle vs. IBM Cloudant vs. KeyDB vs. Oracle NoSQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Impala Xexclude from comparison | Drizzle Xexclude from comparison | IBM Cloudant Xexclude from comparison | KeyDB Xexclude from comparison | Oracle NoSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Drizzle has published its last release in September 2012. The open-source project is discontinued and Drizzle is excluded from the DB-Engines ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Analytic DBMS for Hadoop | MySQL fork with a pluggable micro-kernel and with an emphasis of performance over compatibility. | Database as a Service offering based on Apache CouchDB | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | A multi-model, scalable, distributed NoSQL database, designed to provide highly reliable, flexible, and available data management across a configurable set of storage nodes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Key-value store | Document store Key-value store Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | impala.apache.org | www.ibm.com/products/cloudant | github.com/Snapchat/KeyDB keydb.dev | www.oracle.com/database/nosql/technologies/nosql | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | impala.apache.org/impala-docs.html | cloud.ibm.com/docs/Cloudant | docs.keydb.dev | docs.oracle.com/en/database/other-databases/nosql-database/index.html | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Cloudera | Drizzle project, originally started by Brian Aker | IBM, Apache Software Foundation IBM acquired Cloudant in February 2014 | EQ Alpha Technology Ltd. | Oracle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2008 | 2010 | 2019 | 2011 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.0, June 2022 | 7.2.4, September 2012 | 23.3, December 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source GNU GPL | commercial | Open Source BSD-3 | Open Source Proprietary for Enterprise Edition (Oracle Database EE license has Oracle NoSQL database EE covered: details) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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++ | Erlang | C++ | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | FreeBSD Linux OS X | hosted | Linux | Linux Solaris SPARC/x86 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | schema-free | Support Fixed schema and Schema-less deployment with the ability to interoperate between them. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | optional | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 by using the Redis Search module | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like DML and DDL statements | yes with proprietary extensions | no | no | SQL-like DML and DDL statements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC | JDBC | RESTful HTTP/JSON API | Proprietary protocol RESP - REdis Serialization Protoco | RESTful HTTP API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | All languages supporting JDBC/ODBC | C C++ Java PHP | C# Java JavaScript Objective-C PHP Ruby | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | C C# Go Java JavaScript (Node.js) Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes user defined functions and integration of map-reduce | no | View functions (Map-Reduce) in JavaScript | Lua | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no hooks for callbacks inside the server can be used. | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | Sharding | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | Electable source-replica replication per shard. Support distributed global deployment with Multi-region table feature | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes query execution via MapReduce | no | yes | no | with Hadoop integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Eventual Consistency | Eventual Consistency Strong eventual consistency with CRDTs | Eventual Consistency Immediate Consistency depending on configuration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no atomic operations within a document possible | Optimistic locking, atomic execution of commands blocks and scripts | configurable ACID within a storage node (=shard) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes Optimistic locking | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes | yes off heap cache | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Apache Sentry and Kerberos | Pluggable authentication mechanisms e.g. LDAP, HTTP | Access rights for users can be defined per database | simple password-based access control and ACL | 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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Impala | Drizzle | IBM Cloudant | KeyDB | Oracle NoSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL won the April ranking; did its forks follow? Has MySQL finally lost its mojo? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Impala 4 Supports Operator Multi-Threading Apache Impala becomes Top-Level Project Cloudera Bringing Impala to AWS Cloud Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop Apache Doris just 'graduated': Why care about this SQL data warehouse provided by Google News | Cloudant Best (and Worst) Practices — Part 1 Intro to Enterprise Cloud Storage: How to Set Up a Cloudant Database IBM Expands Cloud Database Services with Kubernetes IBM Code Engine and IBM Cloudant: Serverless Data and Infrastructure IBM to Purchase Cloudant Database as a service (DBaaS) Provider provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? provided by Google News | OpenWorld 2013: Oracle NoSQL Database On the Rise? Blog Theme - Details We built a geo-distributed, serverless modern app using the Oracle NoSQL Database Cloud Service Oracle Defends Relational DBs Against NoSQL Competitors Oracle Adds New AI-Enabling Features To MySQL HeatWave provided by Google News |
Share this page