DBMS > Apache IoTDB vs. H2 vs. MariaDB vs. NebulaGraph vs. TimescaleDB
System Properties Comparison Apache IoTDB vs. H2 vs. MariaDB vs. NebulaGraph vs. TimescaleDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache IoTDB Xexclude from comparison | H2 Xexclude from comparison | MariaDB Xexclude from comparison | NebulaGraph Xexclude from comparison | TimescaleDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An IoT native database with high performance for data management and analysis, deployable on the edge and the cloud and integrated with Hadoop, Spark and Flink | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | MySQL application compatible open source RDBMS, enhanced with high availability, security, interoperability and performance capabilities. MariaDB ColumnStore provides a column-oriented storage engine and MariaDB Xpand supports distributed SQL. | A distributed, linear scalable, high perfomant Graph DBMS | A time series DBMS optimized for fast ingest and complex queries, based on PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Time Series DBMS | Relational DBMS | Relational DBMS | Graph DBMS | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store Graph DBMS with OQGraph storage engine Spatial DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | iotdb.apache.org | www.h2database.com | mariadb.com Site of MariaDB Corporation mariadb.org Site of MariaDB Foundation | github.com/vesoft-inc/nebula www.nebula-graph.io | www.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | iotdb.apache.org/UserGuide/Master/QuickStart/QuickStart.html | www.h2database.com/html/main.html | mariadb.com/kb/en/library | docs.nebula-graph.io | docs.timescale.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Thomas Mueller | MariaDB Corporation Ab (MariaDB Enterprise), MariaDB Foundation (community MariaDB Server) The lead developer Monty Widenius is the original author of MySQL | Vesoft Inc. | Timescale | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2018 | 2005 | 2009 Fork of MySQL, which was first released in 1995 | 2019 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.1.0, April 2023 | 2.2.220, July 2023 | 11.3.2, February 2024 | 2.13.0, November 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source dual-licence (Mozilla public license, Eclipse public license) | Open Source GPL version 2, commercial enterprise subscription available | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 and C++ | C++ | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM (>= 1.8) | All OS with a Java VM | FreeBSD Linux Solaris Windows ColumnStore storage engine not available on Windows | Linux | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | yes Dynamic columns are supported | Strong typed schema | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | 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 | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes Nebula Graph internally uses the Key-Value store RocksDB for persistency. The vertices, edges, and their properties are stored as Key while their values are stored as Value. The primary indexes are per Key and secondary indexes are per Value. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | yes | yes with proprietary extensions | SQL-like query language | yes full PostgreSQL SQL syntax | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC Native API | JDBC ODBC | ADO.NET JDBC ODBC Proprietary native API | Browser interface console (shell) Cypher Query Language GO Object Graph Mapper Java Object Graph Mapper NGBatis ORM framework for NebulaGraph and Spring-Boot Proprietary native API Python Object Graph Mapper Query language nGQL | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Java Python Scala | Java | Ada C C# C++ D Eiffel Erlang Go Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net C++ Go Java PHP Python | .Net C C++ Delphi Java JDBC JavaScript Perl PHP Python R Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Java Stored Procedures and User-Defined Functions | yes PL/SQL compatibility added with version 10.3 | user defined functions | 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 | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning (by time range) + vertical partitioning (by deviceId) | none | several options for horizontal partitioning and Sharding | Sharding | yes, across time and space (hash partitioning) attributes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication methods; using Raft/IoTConsensus algorithm to ensure strong/eventual data consistency among multiple replicas | With clustering: 2 database servers on different computers operate on identical copies of a database | Multi-source replication Source-replica replication | Causal Clustering using Raft protocol | Source-replica replication with hot standby and reads on replicas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Integration with Hadoop and Spark | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Strong Consistency with Raft | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | yes not for MyISAM storage engine | yes Relationships in graphs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID not for MyISAM storage engine | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, multi-version concurrency control (MVCC) | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes not for in-memory storage engine | yes using RocksDB | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | yes with MEMORY storage engine | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes | fine grained access rights according to SQL-standard | fine grained access rights according to SQL-standard | Role-based access control | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache IoTDB | H2 | MariaDB | NebulaGraph | TimescaleDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | MariaDB is the most powerful open source relational database – modern SQL and JSON... » more | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | MariaDB Servers have many features unavailable in other open source relational databases.... » more | NebulaGraph boasts the world's only graph database solution that is able to host... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Web, SaaS and Cloud operational applications that require high availability, scalability... » more | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Deutsche Bank, DBS Bank, Nasdaq, Red Hat, ServiceNow, Verizon and Walgreens Featured... » more | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | MariaDB is the default database in the LAMP stack supplied by Red Hat and SUSE Linux,... » more | At our very early stage, NebulaGraph has already received over 10,000 stars on GitHub... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | MariaDB plc subscriptions cover our free, open source database, Community Server,... » more | NebulaGraph is open source and free to use under Apache 2.0 license. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for MariaDB provides a native environment for MariaDB database management and development. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache IoTDB | H2 | MariaDB | NebulaGraph | TimescaleDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MariaDB strengthens its position in the open source RDBMS market PostgreSQL is the DBMS of the Year 2017 Big gains for Relational Database Management Systems in DB-Engines Ranking | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | TsFile: A Standard Format for IoT Time Series Data AMD EPYC 8324P / 8324PN Siena 32-Core Siena Linux Server Performance Review Benchmarking The Performance Impact To AMD Inception Mitigations IoTDB Provides Data Management for Industrial Edge IT provided by Google News | Struggling database company MariaDB could be taken private in $37M deal Progress Software Corp. Statement regarding a Possible Offer for MariaDB plc Progress Software considering possible 60c per share offer for MariaDB - TipRanks.com Can MariaDB’s enterprise business be saved? Progress Software weighs cash offer for MariaDB By Investing.com provided by Google News | NebulaGraph Enterprise v5.0: The First Distributed Graph Database to Offer Native GQL Support NebulaGraph Enterprise v3.7.0 Empowers Enterprises to Build Knowledge Graphs with a Few Clicks Celebrating 10,000 GitHub Stars for NebulaGraph NebulaGraph reaps from China’s growing appetite for graph databases Beginner’s Guide to NebulaGraph Database | by Ng Wai Foong provided by Google News | TimescaleDB Is a Vector Database Now, Too Power IoT and time-series workloads with TimescaleDB for Azure Database for PostgreSQL Visualizing IoT Data at Scale With Hopara and TimescaleDB Timescale Announces Corporate Rebrand Reflecting Company's Growth Timescale Valuation Rockets to Over $1B with $110M Round, Marking the Explosive Rise of Time-Series Data provided by Google News |
Share this page