DBMS > DuckDB vs. Ehcache vs. Hawkular Metrics vs. Microsoft Azure Data Explorer vs. TimescaleDB
System Properties Comparison DuckDB vs. Ehcache vs. Hawkular Metrics vs. Microsoft Azure Data Explorer vs. TimescaleDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | DuckDB Xexclude from comparison | Ehcache Xexclude from comparison | Hawkular Metrics Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | TimescaleDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An embeddable, in-process, column-oriented SQL OLAP RDBMS | A widely adopted Java cache with tiered storage options | Hawkular metrics is the metric storage of the Red Hat sponsored Hawkular monitoring system. It is based on Cassandra. | Fully managed big data interactive analytics platform | A time series DBMS optimized for fast ingest and complex queries, based on PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store | Time Series DBMS | Relational DBMS column oriented | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | 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 | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | duckdb.org | www.ehcache.org | www.hawkular.org | azure.microsoft.com/services/data-explorer | www.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | duckdb.org/docs | www.ehcache.org/documentation | www.hawkular.org/hawkular-metrics/docs/user-guide | docs.microsoft.com/en-us/azure/data-explorer | docs.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Terracotta Inc, owned by Software AG | Community supported by Red Hat | Microsoft | Timescale | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2018 | 2009 | 2014 | 2019 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 0.10, February 2024 | 3.10.0, March 2022 | cloud service with continuous releases | 2.15.0, May 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source MIT License | Open Source Apache Version 2; commercial licenses available | Open Source Apache 2.0 | commercial | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | C++ | Java | Java | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | All OS with a Java VM | Linux OS X Windows | hosted | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free | Fixed schema with schema-less datatypes (dynamic) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | numerics, strings, booleans, arrays, JSON blobs, geospatial dimensions, currencies, binary data, other complex data types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | no | all fields are automatically indexed | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | no | Kusto Query Language (KQL), SQL subset | yes full PostgreSQL SQL syntax | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Arrow Database Connectivity (ADBC) CLI Client JDBC ODBC | JCache | HTTP REST | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# 3rd party driver C++ Crystal 3rd party driver Go 3rd party driver Java Lisp 3rd party driver Python R Ruby 3rd party driver Rust Swift Zig 3rd party driver | Java | Go Java Python Ruby | .Net Go Java JavaScript (Node.js) PowerShell Python R | .Net C C++ Delphi Java JDBC JavaScript Perl PHP Python R Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | no | Yes, possible languages: KQL, Python, R | user defined functions, PL/pgSQL, PL/Tcl, PL/Perl, PL/Python, PL/Java, PL/PHP, PL/R, PL/Ruby, PL/Scheme, PL/Unix shell | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes Cache Event Listeners | yes via Hawkular Alerting | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding by using Terracotta Server | Sharding based on Cassandra | Sharding Implicit feature of the cloud service | yes, across time and space (hash partitioning) attributes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | yes by using Terracotta Server | selectable replication factor based on Cassandra | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | Source-replica replication with hot standby and reads on replicas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Tunable Consistency (Strong, Eventual, Weak) | Eventual Consistency based on Cassandra Immediate Consistency based on Cassandra | Eventual Consistency Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | yes supports JTA and can work as an XA resource | no | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes, multi-version concurrency control (MVCC) | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using a tiered cache-storage approach | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | no | Azure Active Directory Authentication | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DuckDB | Ehcache | Hawkular Metrics | Microsoft Azure Data Explorer | TimescaleDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | DuckDB: The tiny but powerful analytics database DuckDB Walks to the Beat of Its Own Analytics Drum Enabling Remote Query Execution through DuckDB Extensions My First Billion (of Rows) in DuckDB | by João Pedro | May, 2024 MotherDuck Raises $52.5 Million Series B Funding as DuckDB Adoption Soars provided by Google News | Atlassian asks customers to patch critical Jira vulnerability Critical Jira Flaw in Atlassian Could Lead to RCE DZone Coding Java JBoss 5 to 7 in 11 steps provided by Google News | Waiting for Red Hat OpenShift 4.0? Too late, 4.1 has already arrived… • DEVCLASS provided by Google News | Azure Data Explorer: Log and telemetry analytics benchmark Providing modern data transfer and storage service at Microsoft with Microsoft Azure - Inside Track Blog Controlling costs in Azure Data Explorer using down-sampling and aggregation Microsoft Introduces Azure Integration Environments and Business Process Tracking in Public Preview Individually great, collectively unmatched: Announcing updates to 3 great Azure Data Services provided by Google News | TimescaleDB Is a Vector Database Now, Too Timescale Acquires PopSQL to Bring a Modern, Collaborative SQL GUI to PostgreSQL Developers Power IoT and time-series workloads with TimescaleDB for Azure Database for PostgreSQL Timescale Valuation Rockets to Over $1B with $110M Round, Marking the Explosive Rise of Time-Series Data TimescaleDB goes distributed; implements ‘Chunking’ over ‘Sharding’ for scaling-out provided by Google News |
Share this page