DBMS > Apache Druid vs. Apache Impala vs. GBase vs. Microsoft Azure Data Explorer vs. XTDB
System Properties Comparison Apache Druid vs. Apache Impala vs. GBase vs. Microsoft Azure Data Explorer vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Druid Xexclude from comparison | Apache Impala Xexclude from comparison | GBase Xexclude from comparison | Microsoft Azure Data Explorer 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 | Analytic DBMS for Hadoop | Widely used RDBMS in China, including analytical, transactional, distributed transactional, and cloud-native data warehousing. | Fully managed big data interactive analytics platform | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Time Series DBMS | Relational DBMS | Relational DBMS | Relational DBMS column oriented | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Document store If a column is of type dynamic docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/dynamic then it's possible to add arbitrary JSON documents in this cell Event Store this is the general usage pattern at Microsoft. Billing, Logs, Telemetry events are stored in ADX and the state of an individual entity is defined by the arg_max(timestamps) Spatial DBMS Search engine support for complex search expressions docs.microsoft.com/en-us/azure/kusto/query/parseoperator FTS, Geospatial docs.microsoft.com/en-us/azure/kusto/query/geo-point-to-geohash-function distributed search -> ADX acts as a distributed search engine Time Series DBMS see docs.microsoft.com/en-us/azure/data-explorer/time-series-analysis | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | druid.apache.org | impala.apache.org | www.gbase.cn | azure.microsoft.com/services/data-explorer | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | druid.apache.org/docs/latest/design | impala.apache.org/impala-docs.html | docs.microsoft.com/en-us/azure/data-explorer | www.xtdb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Apache Software Foundation Apache top-level project, originally developed by Cloudera | General Data Technology Co., Ltd. | Microsoft | Juxt Ltd. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2004 | 2019 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 29.0.1, April 2024 | 4.1.0, June 2022 | GBase 8a, GBase 8s, GBase 8c | cloud service with continuous releases | 1.19, September 2021 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache license v2 | Open Source Apache Version 2 | commercial | commercial | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++ | C, Java, Python | Clojure | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix | Linux | Linux | hosted | All OS with a Java 8 (and higher) VM Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes schema-less columns are supported | yes | yes | Fixed schema with schema-less datatypes (dynamic) | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | 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 | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | all fields are automatically indexed | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL for querying | SQL-like DML and DDL statements | Standard with numerous extensions | Kusto Query Language (KQL), SQL subset | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC RESTful HTTP/JSON API | JDBC ODBC | ADO.NET C API JDBC ODBC | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure JavaScript PHP Python R Ruby Scala | All languages supporting JDBC/ODBC | C# | .Net Go Java JavaScript (Node.js) PowerShell Python R | Clojure Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes user defined functions and integration of map-reduce | user defined functions | Yes, possible languages: KQL, Python, R | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding manual/auto, time-based | Sharding | horizontal partitioning (by range, list and hash) and vertical partitioning | Sharding Implicit feature of the cloud service | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, via HDFS, S3 or other storage engines | selectable replication factor | yes | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | yes, each node contains all data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes query execution via MapReduce | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency | Immediate Consistency | Eventual Consistency Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | 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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | RBAC using LDAP or Druid internals for users and groups for read/write by datasource and system | Access rights for users, groups and roles based on Apache Sentry and Kerberos | yes | Azure Active Directory Authentication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Apache Impala | GBase | Microsoft Azure Data Explorer | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | 'Lucifer' Botnet Turns Up the Heat on Apache Hadoop Servers 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 Imply Data gives Apache Druid schema auto-discover capability Imply Announces Automatic Schema Discovery for Apache Druid, Reinforcing Druid's Leadership for Real-Time ... provided by Google News | 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 Hudi: Uber Engineering’s Incremental Processing Framework on Apache Hadoop provided by Google News | Public Preview: Azure Data Explorer connector for Apache Flink | Azure updates Providing modern data transfer and storage service at Microsoft with Microsoft Azure - Inside Track Blog Azure Data Explorer: Log and telemetry analytics benchmark Introducing Microsoft Fabric: The data platform for the era of AI | Microsoft Azure Blog Microsoft Introduces Azure Integration Environments and Business Process Tracking in Public Preview provided by Google News |
Share this page