DBMS > Apache Druid vs. Apache Phoenix vs. Spark SQL vs. Vertica vs. VoltDB
System Properties Comparison Apache Druid vs. Apache Phoenix vs. Spark SQL vs. Vertica vs. VoltDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Druid Xexclude from comparison | Apache Phoenix Xexclude from comparison | Spark SQL Xexclude from comparison | Vertica OpenText™ Vertica™ Xexclude from comparison | VoltDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Open-source analytics data store designed for sub-second OLAP queries on high dimensionality and high cardinality data | A scale-out RDBMS with evolutionary schema built on Apache HBase | Spark SQL is a component on top of 'Spark Core' for structured data processing | Cloud or off-cloud analytical database and query engine for structured and semi-structured streaming and batch data. Machine learning platform with built-in algorithms, data preparation capabilities, and model evaluation and management via SQL or Python. | Distributed In-Memory NewSQL RDBMS Used for OLTP applications with a high frequency of relatively simple transactions, that can hold all their data in memory | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Time Series DBMS | Relational DBMS | Relational DBMS | Relational DBMS Column oriented | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | druid.apache.org | phoenix.apache.org | spark.apache.org/sql | www.vertica.com | www.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | druid.apache.org/docs/latest/design | phoenix.apache.org | spark.apache.org/docs/latest/sql-programming-guide.html | vertica.com/documentation | docs.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Apache Software Foundation | Apache Software Foundation | OpenText previously Micro Focus and Hewlett Packard | VoltDB Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2014 | 2014 | 2005 | 2010 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 29.0.1, April 2024 | 5.0-HBase2, July 2018 and 4.15-HBase1, December 2019 | 3.5.0 ( 2.13), September 2023 | 12.0.3, January 2023 | 11.3, April 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache license v2 | Open Source Apache Version 2.0 | Open Source Apache 2.0 | commercial Limited community edition free | Open Source AGPL for Community Edition, commercial license for Enterprise, AWS, and Pro Editions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no on-premises, all major clouds - Amazon AWS, Microsoft Azure, Google Cloud Platform and containers | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | Scala | C++ | Java, C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix | Linux Unix Windows | Linux OS X Windows | Linux | Linux OS X for development | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes schema-less columns are supported | yes late-bound, schema-on-read capabilities | yes | Yes, but also semi-structure/unstructured data storage, and complex hierarchical data (like Parquet) stored and/or queried. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | 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 | yes | no | No Indexes Required. Different internal optimization strategy, but same functionality included. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL for querying | yes | SQL-like DML and DDL statements | Full 1999 standard plus machine learning, time series and geospatial. Over 650 functions. | yes only a subset of SQL 99 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC RESTful HTTP/JSON API | JDBC | JDBC ODBC | ADO.NET JDBC Kafka Connector ODBC RESTful HTTP API Spark Connector vSQL character-based, interactive, front-end utility | Java API JDBC RESTful HTTP/JSON API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure JavaScript PHP Python R Ruby Scala | C C# C++ Go Groovy Java PHP Python Scala | Java Python R Scala | C# C++ Go Java JavaScript (Node.js) Perl PHP Python R | C# C++ Erlang not officially supported Go Java JavaScript Node.js PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | user defined functions | no | yes, PostgreSQL PL/pgSQL, with minor differences | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | no | yes, called Custom Alerts | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding manual/auto, time-based | Sharding | yes, utilizing Spark Core | horizontal partitioning, hierarchical partitioning | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, via HDFS, S3 or other storage engines | Multi-source replication Source-replica replication | none | Multi-source replication One, or more copies of data replicated across nodes, or object-store used for repository. | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | Hadoop integration | no Bi-directional Spark integration | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency or Eventual Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | no FOREIGN KEY constraints are not supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no | ACID | ACID Transactions are executed single-threaded within stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes Data access is serialized by the server | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes Snapshots and command logging | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | RBAC using LDAP or Druid internals for users and groups for read/write by datasource and system | Access Control Lists (using HBase ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC, multi-tenancy | no | fine grained access rights according to SQL-standard; supports Kerberos, LDAP, Ident and hash | Users and roles with access to stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Druid | Apache Phoenix | Spark SQL | Vertica OpenText™ Vertica™ | VoltDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Deploy-anywhere database for large-scale analytical deployments. Deploy off-cloud,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Fast, scalable, and capable of high concurrency. Separation of compute/storage leverages... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Communication and network analytics, Embedded analytics, Fraud monitoring and Risk... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Abiba Systems, Adform, adMarketplace, AmeriPride, Anritsu, AOL, Avito, Auckland Transport,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Cost-based models and subscription-based models are both available. One license is... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 Druid | Apache Phoenix | Spark SQL | Vertica OpenText™ Vertica™ | VoltDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Druid Wins Best Big Data Product in the 2023 BigDATAwire Readers' Choice Awards 'Lucifer' Botnet Turns Up the Heat on Apache Hadoop Servers New DDoS malware Attacking Apache big-data stack, Hadoop, & Druid Servers Apache Druid Takes Its Place In The Pantheon Of Databases Imply advances Apache Druid real-time analytics database provided by Google News | Supercharge SQL on Your Data in Apache HBase with Apache Phoenix | Amazon Web Services Azure HDInsight Analytics Platform Now Supports Apache Hadoop 3.0 Hortonworks Starts Hadoop Summit with Data Platform Update -- ADTmag Apache Drill Adds New Data Formats Amazon EMR 4.7.0 – Apache Tez & Phoenix, Updates to Existing Apps | Amazon Web Services provided by Google News | Performance Insights from Sigma Rule Detections in Spark Streaming 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 Use Amazon Athena with Spark SQL for your open-source transactional table formats | Amazon Web Services provided by Google News | OCI Object Storage Completes Technical Validation of Vertica in Eon Mode Stonebraker Seeks to Invert the Computing Paradigm with DBOS OpenText expands enterprise portfolio with AI and Micro Focus integrations Querying a Vertica data source in Amazon Athena using the Athena Federated Query SDK | Amazon Web Services Postgres pioneer Michael Stonebraker promises to upend the database once more provided by Google News | VoltDB Launches Active(N) Lossless Cross Data Center Replication VoltDB Upgrades Power, Security of Its In-Memory Database VoltDB Aims for Fast Big Data Development -- ADTmag VoltDB Adds Geospatial Support, Cross-Site Replication Stonebraker Seeks to Invert the Computing Paradigm with DBOS provided by Google News |
Share this page