DBMS > Apache Phoenix vs. LMDB vs. Microsoft Azure Cosmos DB vs. Oracle NoSQL vs. Spark SQL
System Properties Comparison Apache Phoenix vs. LMDB vs. Microsoft Azure Cosmos DB vs. Oracle NoSQL vs. Spark SQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Phoenix Xexclude from comparison | LMDB Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | Oracle NoSQL Xexclude from comparison | Spark SQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A scale-out RDBMS with evolutionary schema built on Apache HBase | A high performant, light-weight, embedded key-value database library | Globally distributed, horizontally scalable, multi-model database service | A multi-model, scalable, distributed NoSQL database, designed to provide highly reliable, flexible, and available data management across a configurable set of storage nodes | Spark SQL is a component on top of 'Spark Core' for structured data processing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store | Document store Graph DBMS Key-value store Wide column store | Document store Key-value store Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | phoenix.apache.org | www.symas.com/symas-embedded-database-lmdb | azure.microsoft.com/services/cosmos-db | www.oracle.com/database/nosql/technologies/nosql | spark.apache.org/sql | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | phoenix.apache.org | www.lmdb.tech/doc | learn.microsoft.com/azure/cosmos-db | docs.oracle.com/en/database/other-databases/nosql-database/index.html | spark.apache.org/docs/latest/sql-programming-guide.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Symas | Microsoft | Oracle | Apache Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2014 | 2011 | 2014 | 2011 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 0.9.32, January 2024 | 23.3, December 2023 | 3.5.0 ( 2.13), September 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source | commercial | Open Source Proprietary for Enterprise Edition (Oracle Database EE license has Oracle NoSQL database EE covered: details) | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | C | Java | Scala | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Unix Windows | Linux Unix Windows | hosted | Linux Solaris SPARC/x86 | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes late-bound, schema-on-read capabilities | schema-free | schema-free | Support Fixed schema and Schema-less deployment with the ability to interoperate between them. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes JSON types | optional | 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 | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes All properties auto-indexed by default | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | SQL-like query language | SQL-like DML and DDL statements | SQL-like DML and DDL statements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | RESTful HTTP API | JDBC ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Groovy Java PHP Python Scala | .Net C C++ Clojure Go Haskell Java JavaScript (Node.js) Lisp Lua MatLab Nim Objective C OCaml Perl PHP Python R Ruby Rust Swift Tcl | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | C C# Go Java JavaScript (Node.js) Python | Java Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | no | JavaScript | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | JavaScript | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding Implicit feature of the cloud service | Sharding | yes, utilizing Spark Core | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | none | yes Implicit feature of the cloud service | Electable source-replica replication per shard. Support distributed global deployment with Multi-region table feature | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Hadoop integration | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | with Hadoop integration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Eventual Consistency Immediate Consistency depending on configuration | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | Multi-item ACID transactions with snapshot isolation within a partition | configurable ACID within a storage node (=shard) | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | 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 | yes | yes off heap cache | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access Control Lists (using HBase ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC, multi-tenancy | no | Access rights can be defined down to the item level | Access rights for users and roles | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Phoenix | LMDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | Oracle NoSQL | Spark SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Supercharge SQL on Your Data in Apache HBase with Apache Phoenix | Amazon Web Services Azure #HDInsight Apache Phoenix now supports Zeppelin Bridge the SQL-NoSQL gap with Apache Phoenix Apache Calcite, FreeMarker, Gora, Phoenix, and Solr updated Hortonworks Starts Hadoop Summit with Data Platform Update -- ADTmag provided by Google News | Automating SAP S/4HANA Migration with IT-Conductor, BGP Managed Services, and AWS | Amazon Web Services The Tom Brady Data Biography The Lightning Memory-mapped Database Akamai launches managed database service – Blocks and Files Connecting the worlds of metabolomics databases provided by Google News | Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates Microsoft Build 2024: Cosmos DB for NoSQL gets vector search General Availability: Data API builder | Azure updates General availability: Microsoft Entra ID integration with Azure Cosmos DB for PostgreSQL | Azure updates 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 | Run Apache Hive workloads using Spark SQL with Amazon EMR on EKS | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Performant IPv4 Range Spark Joins | by Jean-Claude Cote 18 Top Big Data Tools and Technologies to Know About in 2024 provided by Google News |
Share this page