DBMS > EJDB vs. Microsoft Azure Data Explorer vs. mSQL vs. MySQL vs. QuestDB
System Properties Comparison EJDB vs. Microsoft Azure Data Explorer vs. mSQL vs. MySQL vs. QuestDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EJDB Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | mSQL Mini SQL Xexclude from comparison | MySQL Xexclude from comparison | QuestDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | Fully managed big data interactive analytics platform | mSQL (Mini SQL) is a simple and lightweight RDBMS | Widely used open source RDBMS | A high performance open source SQL database for time series data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS column oriented | Relational DBMS | Relational DBMS Key/Value like access via memcached API | 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 | Document store Spatial DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Softmotions/ejdb | azure.microsoft.com/services/data-explorer | hughestech.com.au/products/msql | www.mysql.com | questdb.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/Softmotions/ejdb/blob/master/README.md | docs.microsoft.com/en-us/azure/data-explorer | dev.mysql.com/doc | questdb.io/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | Microsoft | Hughes Technologies | Oracle since 2010, originally MySQL AB, then Sun | QuestDB Technology Inc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2019 | 1994 | 1995 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | cloud service with continuous releases | 4.4, October 2021 | 8.4.0, April 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPLv2 | commercial | commercial free licenses can be provided | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | C | C and C++ | Java (Zero-GC), C++, Rust | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | hosted | AIX HP-UX Linux OS X Solaris SPARC/x86 Windows | FreeBSD Linux OS X Solaris Windows | Linux macOS Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | Fixed schema with schema-less datatypes (dynamic) | yes | yes | yes schema-free via InfluxDB Line Protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, bool, date, object_id | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | 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. | yes | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | all fields are automatically indexed | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | Kusto Query Language (KQL), SQL subset | A subset of ANSI SQL is implemented no subqueries, aggregate functions, views, foreign keys, triggers | yes with proprietary extensions | SQL with time-series extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | in-process shared library | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | JDBC ODBC | ADO.NET JDBC ODBC Proprietary native API | HTTP REST InfluxDB Line Protocol (TCP/UDP) JDBC PostgreSQL wire protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | .Net Go Java JavaScript (Node.js) PowerShell Python R | C C++ Delphi Java Perl PHP Tcl | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | C PostgreSQL driver C++ Go Java JavaScript (Node.js) Python Rust over HTTP | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | Yes, possible languages: KQL, Python, R | no | yes proprietary syntax | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding Implicit feature of the cloud service | none | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | horizontal partitioning (by timestamps) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | none | Multi-source replication Source-replica replication | Source-replica replication with eventual consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency | none | Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | no | no | yes not for MyISAM storage engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | no | ACID not for MyISAM storage engine | ACID for single-table writes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | no | yes table locks or row locks depending on storage engine | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | yes | yes through memory mapped files | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Azure Active Directory Authentication | no | Users with fine-grained authorization concept no user groups or roles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | Microsoft Azure Data Explorer | mSQL Mini SQL | MySQL | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | Microsoft Azure Data Explorer | mSQL Mini SQL | MySQL | QuestDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the 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 Individually great, collectively unmatched: Announcing updates to 3 great Azure Data Services Log and Telemetry Analytics Performance Benchmark provided by Google News | Writing a Web Service in Perl Higher Education PS rules out ghost students before PAC provided by Google News | Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade ... Ultimate MySQL Workbench Installation Guide [2024 Edition] Zendesk Moves from DynamoDB to MySQL and S3 to Save over 80% in Costs How to Create a MySQL 8 Database User With Remote Access Rule::array() and whereJsonOverlaps() for MySQL in Laravel 11.7 provided by Google News | QuestDB snares $12M Series A with hosted version coming soon SQL Extensions for Time-Series Data in QuestDB Q&A: Nicolas Hourcard, QuestDB: The advantages of a time-series database Comparing Different Time-Series Databases Aquis Exchange goes live with QuestDB for real time monitoring provided by Google News |
Share this page