DBMS > Apache IoTDB vs. IBM Db2 Event Store vs. mSQL vs. OrigoDB vs. XTDB
System Properties Comparison Apache IoTDB vs. IBM Db2 Event Store vs. mSQL vs. OrigoDB vs. XTDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache IoTDB Xexclude from comparison | IBM Db2 Event Store Xexclude from comparison | mSQL Mini SQL Xexclude from comparison | OrigoDB Xexclude from comparison | XTDB formerly named Crux 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 | Distributed Event Store optimized for Internet of Things use cases | mSQL (Mini SQL) is a simple and lightweight RDBMS | A fully ACID in-memory object graph database | A general purpose database with bitemporal SQL and Datalog and graph queries | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Time Series DBMS | Event Store Time Series DBMS | Relational DBMS | Document store Object oriented DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | iotdb.apache.org | www.ibm.com/products/db2-event-store | hughestech.com.au/products/msql | origodb.com | github.com/xtdb/xtdb www.xtdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | iotdb.apache.org/UserGuide/Master/QuickStart/QuickStart.html | www.ibm.com/docs/en/db2-event-store | origodb.com/docs | www.xtdb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | IBM | Hughes Technologies | Robert Friberg et al | Juxt Ltd. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2018 | 2017 | 1994 | 2009 under the name LiveDB | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.1.0, April 2023 | 2.0 | 4.4, October 2021 | 1.19, September 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | commercial free developer edition available | commercial free licenses can be provided | Open Source | Open Source MIT License | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | C and C++ | C | C# | Clojure | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM (>= 1.8) | Linux Linux, macOS, Windows for the developer addition | AIX HP-UX Linux OS X Solaris SPARC/x86 Windows | Linux Windows | All OS with a Java 8 (and higher) VM Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | yes | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | User defined using .NET types and collections | 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 | no | no can be achieved using .NET | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | yes through the embedded Spark runtime | A subset of ANSI SQL is implemented no subqueries, aggregate functions, views, foreign keys, triggers | no | limited SQL, making use of Apache Calcite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC Native API | ADO.NET DB2 Connect JDBC ODBC RESTful HTTP API | JDBC ODBC | .NET Client API HTTP API LINQ | HTTP REST JDBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Go Java Python Scala | C C# C++ Cobol Delphi Fortran Go Java JavaScript (Node.js) Perl PHP Python R Ruby Scala Visual Basic | C C++ Delphi Java Perl PHP Tcl | .Net | Clojure Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | no | yes Domain Events | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning (by time range) + vertical partitioning (by deviceId) | Sharding | none | horizontal partitioning client side managed; servers are not synchronized | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Active-active shard replication | none | Source-replica replication | yes, each node contains all data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Eventual Consistency | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | depending on model | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | no | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | No - written data is immutable | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | Yes - Synchronous writes to local disk combined with replication and asynchronous writes in parquet format to permanent shared storage | yes | yes Write ahead log | 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. | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes | fine grained access rights according to SQL-standard | no | Role based authorization | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 IoTDB | IBM Db2 Event Store | mSQL Mini SQL | OrigoDB | XTDB formerly named Crux | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Apache Promotes IoT Database Project Benchmarking The Performance Impact To AMD Inception Mitigations IoTDB Provides Data Management for Industrial Edge IT provided by Google News | The vision for Db2 Advancements in streaming data storage, real-time analysis and machine learning IBM Builds New Ultra-Fast Platform for Hoovering Up and Analyzing Data from Anywhere How IBM Is Turning Db2 into an 'AI Database' Best cloud databases of 2022 provided by Google News | Writing a Web Service in Perl Higher Education PS rules out ghost students before PAC provided by Google News |
Share this page