DBMS > Derby vs. HarperDB vs. SpatiaLite vs. TDengine vs. Virtuoso
System Properties Comparison Derby vs. HarperDB vs. SpatiaLite vs. TDengine vs. Virtuoso
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Derby often called Apache Derby, originally IBM Cloudscape; contained in the Java SDK as JavaDB Xexclude from comparison | HarperDB Xexclude from comparison | SpatiaLite Xexclude from comparison | TDengine Xexclude from comparison | Virtuoso Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | Ultra-low latency distributed database with an intuitive REST API supporting NoSQL and SQL (including joins). Deployment of functions and databases simultaneously with a consolidated node-level architecture. | Spatial extension of SQLite | Time Series DBMS and big data platform | Virtuoso is a multi-model hybrid-RDBMS that supports management of data represented as relational tables and/or property graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Spatial DBMS | Time Series DBMS | Document store Graph DBMS Native XML DBMS Relational DBMS RDF store Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Relational DBMS | Relational DBMS | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | db.apache.org/derby | www.harperdb.io | www.gaia-gis.it/fossil/libspatialite/index | github.com/taosdata/TDengine tdengine.com | virtuoso.openlinksw.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | db.apache.org/derby/manuals/index.html | docs.harperdb.io/docs | www.gaia-gis.it/gaia-sins/spatialite_topics.html | docs.tdengine.com | docs.openlinksw.com/virtuoso | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | HarperDB | Alessandro Furieri | TDEngine, previously Taos Data | OpenLink Software | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 1997 | 2017 | 2008 | 2019 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 10.17.1.0, November 2023 | 3.1, August 2021 | 5.0.0, August 2020 | 3.0, August 2022 | 7.2.11, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | commercial free community edition available | Open Source MPL 1.1, GPL v2.0 or LGPL v2.1 | Open Source AGPL V3, also commercial editions available | Open Source GPLv2, extended commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Node.js | C++ | C | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux OS X | server-less | Linux Windows | AIX FreeBSD HP-UX Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | dynamic schema | yes | yes | yes SQL - Standard relational schema RDF - Quad (S, P, O, G) or Triple (S, P, O) XML - DTD, XML Schema DAV - freeform filesystem objects, plus User Defined Types a/k/a Dynamic Extension Type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes JSON 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 | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | SQL-like data manipulation statements | yes | Standard SQL with extensions for time-series applications | yes SQL-92, SQL-200x, SQL-3, SQLX | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | JDBC ODBC React Hooks RESTful HTTP/JSON API WebSocket | JDBC RESTful HTTP API | ADO.NET GeoSPARQL HTTP API JDBC Jena RDF API ODBC OLE DB RDF4J API RESTful HTTP API Sesame REST HTTP Protocol SOAP webservices SPARQL 1.1 WebDAV XPath XQuery XSLT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java | .Net C C# C++ ColdFusion D Dart Delphi Erlang Go Haskell Java JavaScript (Node.js) Lisp MatLab Objective C Perl PHP PowerShell Prolog Python R Ruby Rust Scala Swift | C C# C++ Go Java JavaScript (Node.js) PHP Python Rust | .Net C C# C++ Java JavaScript Perl PHP Python Ruby Visual Basic | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Java Stored Procedures | Custom Functions since release 3.1 | no | no | yes Virtuoso PL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | yes | yes, via alarm monitoring | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | A table resides as a whole on one (or more) nodes in a cluster | none | Sharding | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication | yes the nodes on which a table resides can be defined | none | yes | Chain, star, and bi-directional replication Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | Atomic execution of specific operations | ACID | ACID | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes, using LMDB | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | Access rights for users and roles | no | yes | Fine-grained Attribute-Based Access Control (ABAC) in addition to typical coarse-grained Role-Based Access Control (RBAC) according to SQL-standard. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Derby often called Apache Derby, originally IBM Cloudscape; contained in the Java SDK as JavaDB | HarperDB | SpatiaLite | TDengine | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | TDengine™ is a next generation data historian purpose-built for Industry 4.0 and... » more | Virtuoso is a modern multi-model RDBMS for managing data represented as tabular relations... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | High Performance at any Scale: TDengine is purpose-built for handling massive industrial... » more | Performance & Scale — as exemplified by DBpedia and the LOD Cloud it spawned, i.e.,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | TDengine is designed for Industrial IoT scenarios, including: Manufacturing Connected... » more | Used for — Analytics/BI Conceptual Data Virtualization Enterprise Knowledge Graphs... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Broad use across enterprises and governments including — European Union (EU) US Government... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | TDengine has garnered over 22,500 stars on GitHub and is used in over 50 countries... » more | Largest installed-base of Multi-Model RDBMS for AI-friendly Knowledge Graphs Platform... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | TDengine OSS is an open source, cloud native time series database. It includes built-in... » more | Available in both Commercial Enterprise and Open Source (GPL v2) Editions Feature... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Can Typical Time-Series Databases Replace Data Historians? TDengine 3.3.0.0 Release Notes How to Unlock Value from Industrial Data with AI and ML Technology Compare InfluxDB vs. TDengine Why We Need the Next Generation Data Historian | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Derby often called Apache Derby, originally IBM Cloudscape; contained in the Java SDK as JavaDB | HarperDB | SpatiaLite | TDengine | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Spatial database management systems | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | JDBC tutorial: Easy installation and setup with Apache Derby Top Database Tools for Java Developers in 2023 Installing Apache Hive 3.1.2 on Windows 10 | by Hadi Fadlallah The Arrival of Java 20 The Apache® Software Foundation Announces 18 Years of Open Source Leadership provided by Google News | Startups of the Year 2023: Meet HarperDB - A Database and Application Development Platform Unlocking immersive golfing experiences with AWS Wavelength | Amazon Web Services HarperDB: An underdog SQL / NoSQL database | ZDNET HarperDB 4.0 Delivers Enterprise-Grade Global Application Development to Every Developer HarperDB is More Than Just a Database: Here's Why provided by Google News | TDengine debuts cloud-based time-series data processing platform for IoT deployments New TDengine Benchmark Results Show Up to 37.0x Higher Query Performance Than InfluxDB and TimescaleDB Comparing Different Time-Series Databases provided by Google News |
Share this page