DBMS > Apache Druid vs. Heroic vs. Infobright vs. Percona Server for MongoDB vs. XTDB
System Properties Comparison Apache Druid vs. Heroic vs. Infobright vs. Percona Server for MongoDB vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Druid Xexclude from comparison | Heroic Xexclude from comparison | Infobright Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | XTDB formerly named Crux Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Open-source analytics data store designed for sub-second OLAP queries on high dimensionality and high cardinality data | Time Series DBMS built at Spotify based on Cassandra or Google Cloud Bigtable, and ElasticSearch | High performant column-oriented DBMS for analytic workloads using MySQL or PostgreSQL as a frontend | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Time Series DBMS | Time Series DBMS | Relational DBMS | Document store | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | druid.apache.org | github.com/spotify/heroic | ignitetech.com/softwarelibrary/infobrightdb | www.percona.com/mongodb/software/percona-server-for-mongodb | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | druid.apache.org/docs/latest/design | spotify.github.io/heroic | docs.percona.com/percona-distribution-for-mongodb | www.xtdb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Spotify | Ignite Technologies Inc.; formerly InfoBright Inc. | Percona | Juxt Ltd. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2014 | 2005 | 2015 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 29.0.1, April 2024 | 3.4.10-2.10, November 2017 | 1.19, September 2021 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache license v2 | Open Source Apache 2.0 | commercial The open source (GPLv2) version did not support inserts/updates/deletes and was discontinued with July 2016 | Open Source GPL Version 2 | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | C | C++ | Clojure | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix | Linux Windows | Linux | All OS with a Java 8 (and higher) VM Linux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes schema-less columns are supported | schema-free | yes | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | yes, extensible-data-notation format | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes via Elasticsearch | no Knowledge Grid Technology used instead | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL for querying | no | yes | no | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC RESTful HTTP/JSON API | HQL (Heroic Query Language, a JSON-based language) HTTP API | ADO.NET JDBC ODBC | proprietary protocol using JSON | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure JavaScript PHP Python R Ruby Scala | .Net C C# C++ D Eiffel Erlang Haskell Java Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | Clojure Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | no | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding manual/auto, time-based | Sharding | none | Sharding | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, via HDFS, S3 or other storage engines | yes | Source-replica replication | Source-replica replication | yes, each node contains all data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Immediate Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | ACID | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes, flexibel persistency by using storage technologies like Apache Kafka, RocksDB or LMDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes | yes via In-Memory Engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | RBAC using LDAP or Druid internals for users and groups for read/write by datasource and system | fine grained access rights according to SQL-standard exploiting MySQL or PostgreSQL frontend capabilities | 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 Druid | Heroic | Infobright | Percona Server for MongoDB | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Druid Wins Best Big Data Product in the 2023 BigDATAwire Readers' Choice Awards New DDoS malware Attacking Apache big-data stack, Hadoop, & Druid Servers 'Lucifer' Botnet Turns Up the Heat on Apache Hadoop Servers Apache Druid Takes Its Place In The Pantheon Of Databases How to connect DataGrip to Apache Druid | by Zisis Flokas provided by Google News | Review: Google Bigtable scales with ease provided by Google News | MongoDB Performance Tuning How to Plan Your MongoDB Upgrade Why Isn't the World Upgrading Its Databases? FerretDB goes GA: Gives you MongoDB, without the MongoDB... The essential guide to MongoDB security provided by Google News |
Share this page