DBMS > Apache Drill vs. Apache Impala vs. EJDB vs. QuestDB
System Properties Comparison Apache Drill vs. Apache Impala vs. EJDB vs. QuestDB
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | Apache Impala Xexclude from comparison | EJDB Xexclude from comparison | QuestDB Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | Analytic DBMS for Hadoop | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | A high performance open source SQL database for time series data | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Document store | Time Series DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | impala.apache.org | github.com/Softmotions/ejdb | questdb.io | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | impala.apache.org/impala-docs.html | github.com/Softmotions/ejdb/blob/master/README.md | questdb.io/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Apache Software Foundation Apache top-level project, originally developed by Cloudera | Softmotions | QuestDB Technology Inc | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2012 | 2014 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 4.1.0, June 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Apache Version 2 | Open Source GPLv2 | Open Source Apache 2.0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C | Java (Zero-GC), C++, Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux | server-less | Linux macOS Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | schema-free | yes schema-free via InfluxDB Line Protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes string, integer, double, bool, date, object_id | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | SQL-like DML and DDL statements | no | SQL with time-series extensions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | JDBC ODBC | in-process shared library | HTTP REST InfluxDB Line Protocol (TCP/UDP) JDBC PostgreSQL wire protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | All languages supporting JDBC/ODBC | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | C PostgreSQL driver C++ Go Java JavaScript (Node.js) Python Rust over HTTP | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | yes user defined functions and integration of map-reduce | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | none | horizontal partitioning (by timestamps) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor | none | Source-replica replication with eventual consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | yes query execution via MapReduce | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no typically not needed, however similar functionality with collection joins possible | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | no | ACID for single-table writes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes Read/Write Locking | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Depending on the underlying data source | no | yes through memory mapped files | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | Access rights for users, groups and roles based on Apache Sentry and Kerberos | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Apache Impala | EJDB | QuestDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Relational model with native time series support Column-based storage and time partitioned... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | High ingestion throughput: peak of 4M rows/sec (TSBS Benchmark) Code optimizations... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Financial tick data Industrial IoT Application Metrics Monitoring » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Banks & Hedge funds, Yahoo, OKX, Airbus, Aquis Exchange, Net App, Cloudera, Airtel,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Open source Apache 2.0 QuestDB Enterprise QuestDB Cloud » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | QuestDB and Raspberry Pi 5 benchmark, a pocket-sized powerhouse Build your own resource monitor with QuestDB and Grafana Does "vpmovzxbd" Scare You? Here's Why it Doesn't Have To Create an ADS-B flight radar with QuestDB and a Raspberry Pi Build a temperature IoT sensor with Raspberry Pi Pico & QuestDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Drill | Apache Impala | EJDB | QuestDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Drill case study: A tutorial on processing CSV files Analyse Kafka messages with SQL queries using Apache Drill Apache Drill Poised to Crack Tough Data Challenges Apache Drill Eliminates ETL, Data Transformation for MapR Database Drill Mines Diverse Data Sets, Google Style provided by Google News | Apache Impala 4 Supports Operator Multi-Threading Cloudera Bringing Impala to AWS Cloud Apache Impala becomes Top-Level Project 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 | QuestDB snares $12M Series A with hosted version coming soon SQL Extensions for Time-Series Data in QuestDB Read the Pitch Deck Database Startup QuestDB Used to Raise $12 Million Q&A: Nicolas Hourcard, QuestDB: The advantages of a time-series database Comparing Different Time-Series Databases provided by Google News |
Share this page