DBMS > Datomic vs. H2 vs. HarperDB vs. HugeGraph vs. VictoriaMetrics
System Properties Comparison Datomic vs. H2 vs. HarperDB vs. HugeGraph vs. VictoriaMetrics
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | H2 Xexclude from comparison | HarperDB Xexclude from comparison | HugeGraph Xexclude from comparison | VictoriaMetrics Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | 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. | A fast-speed and highly-scalable Graph DBMS | A fast, cost-effective and scalable Time Series DBMS and monitoring solution | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Graph DBMS | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | www.h2database.com | www.harperdb.io | github.com/hugegraph hugegraph.apache.org | victoriametrics.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | www.h2database.com/html/main.html | docs.harperdb.io/docs | hugegraph.apache.org/docs | docs.victoriametrics.com github.com/VictoriaMetrics/VictoriaMetrics/wiki | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Thomas Mueller | HarperDB | Baidu | VictoriaMetrics | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2005 | 2017 | 2018 | 2018 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 2.2.220, July 2023 | 3.1, August 2021 | 0.9 | v1.91, May 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | Open Source dual-licence (Mozilla public license, Eclipse public license) | commercial free community edition available | Open Source Apache Version 2.0 | Open Source Apache Version 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, Clojure | Java | Node.js | Java | Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM | Linux OS X | Linux macOS Unix | FreeBSD Linux macOS OpenBSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | dynamic schema | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes JSON data types | 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. | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes also supports composite index and range index | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes | SQL-like data manipulation statements | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | JDBC ODBC | JDBC ODBC React Hooks RESTful HTTP/JSON API WebSocket | Java API RESTful HTTP API TinkerPop Gremlin | Graphite protocol InfluxDB Line Protocol OpenTSDB Prometheus Query API Prometheus Remote Read/Write | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | 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 | Groovy Java Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | Java Stored Procedures and User-Defined Functions | Custom Functions since release 3.1 | asynchronous Gremlin script jobs | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | none | A table resides as a whole on one (or more) nodes in a cluster | yes depending on used storage backend, e.g. Cassandra and HBase | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | With clustering: 2 database servers on different computers operate on identical copies of a database | yes the nodes on which a table resides can be defined | yes depending on used storage backend, e.g. Cassandra and HBase | Synchronous replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | via hugegraph-spark | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Eventual Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | yes edges in graph | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | Atomic execution of specific operations | ACID | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, multi-version concurrency control (MVCC) | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes, using LMDB | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes recommended only for testing and development | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | fine grained access rights according to SQL-standard | Access rights for users and roles | Users, roles and permissions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | H2 | HarperDB | HugeGraph | VictoriaMetrics | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Nubank buys firm behind Clojure programming language Zoona Case Study Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic provided by Google News | Startups of the Year 2023: Meet HarperDB - A Database and Application Development Platform 5G Open Innovation Lab Announces its 9th Startup Batch Unlocking immersive golfing experiences with AWS Wavelength | Amazon Web Services HarperDB: An underdog SQL / NoSQL database | ZDNET Stephen Goldberg Named 2023 Bill Daniels Ethical Leader of the Year | CU Denver Business School News provided by Google News | Critical Apache HugeGraph Flaw Let Attackers Execute Remote Code provided by Google News | Green coding - VictoriaMetrics: The efficiency vs complexity trade-off KubeCon24: VictoriaMetrics' Simpler Alternative to Prometheus OpenTelemetry Is Too Complicated, VictoriaMetrics Says How VictoriaMetrics' open source approach led to mass industry adoption VictoriaMetrics takes organic growth over investor pressure provided by Google News |
Share this page