DBMS > Datomic vs. Graph Engine vs. InfluxDB vs. TerarkDB vs. YugabyteDB
System Properties Comparison Datomic vs. Graph Engine vs. InfluxDB vs. TerarkDB vs. YugabyteDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | Graph Engine former name: Trinity Xexclude from comparison | InfluxDB Xexclude from comparison | TerarkDB Xexclude from comparison | YugabyteDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | A distributed in-memory data processing engine, underpinned by a strongly-typed RAM store and a general distributed computation engine | DBMS for storing time series, events and metrics | A key-value store forked from RocksDB with advanced compression algorithms. It can be used standalone or as a storage engine for MySQL and MongoDB | High-performance distributed SQL database for global, internet-scale applications. Wire and feature compatible with PostgreSQL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Graph DBMS Key-value store | Time Series DBMS | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS with GEO package | Document store Wide column store | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | www.graphengine.io | www.influxdata.com/products/influxdb-overview | github.com/bytedance/terarkdb | www.yugabyte.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | www.graphengine.io/docs/manual | docs.influxdata.com/influxdb | bytedance.larkoffice.com/docs/doccnZmYFqHBm06BbvYgjsHHcKc | docs.yugabyte.com github.com/yugabyte/yugabyte-db | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Microsoft | ByteDance, originally Terark | Yugabyte Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2010 | 2013 | 2016 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 2.7.6, April 2024 | 2.19, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | Open Source MIT License | Open Source MIT-License; commercial enterprise version available | commercial restricted open source version available | 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. | YugabyteDB Managed is the fully managed database-as-a-service offering of YugabyteDB. Get started quickly, and effortlessly ensure continuous availability and limitless scale of your cloud native applications. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java, Clojure | .NET and C | Go | C++ | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | .NET | Linux OS X through Homebrew | Linux OS X | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free | schema-free | depending on used data model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | Numeric data and Strings | no | 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 | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like query language | no | yes, PostgreSQL compatible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | RESTful HTTP API | HTTP API JSON over UDP | C++ API Java API | JDBC YCQL, an SQL-based flexible-schema API with its roots in Cassandra Query Language YSQL - a fully relational SQL API that is wire compatible with the SQL language in PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | C# C++ F# Visual Basic | .Net Clojure Erlang Go Haskell Java JavaScript JavaScript (Node.js) Lisp Perl PHP Python R Ruby Rust Scala | C++ Java | C C# C++ Go Java JavaScript (Node.js) PHP Python Ruby Rust Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | yes | no | no | yes sql, plpgsql, C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | horizontal partitioning | Sharding in enterprise version only | none | Hash and Range Sharding, row-level geo-partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | selectable replication factor in enterprise version only | none | Based on Raft distributed consensus protocol, minimum 3 replicas for continuous availability | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Strong consistency on writes and tunable consistency on reads | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | no | no | Distributed ACID with Serializable & Snapshot Isolation. Inspired by Google Spanner architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | optional: either by committing a write-ahead log (WAL) to the local persistent storage or by dumping the memory to a persistent storage | yes | yes | yes based on RocksDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Depending on used storage engine | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | simple rights management via user accounts | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Graph Engine former name: Trinity | InfluxDB | TerarkDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | InfluxData is the creator of InfluxDB , the open source time series database. It... » more | YugabyteDB is an open source distributed SQL database for cloud native transactional... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Time to Value InfluxDB is available in all the popular languages and frameworks,... » more | PostgreSQL compatible: Get instantly productive with a PostgreSQL compatible RDBMS.... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | IoT & Sensor Monitoring Developers are witnessing the instrumentation of every available... » more | Systems of record and engagement for cloud native applications that require resilience,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | InfluxData has more than 1,900 paying customers, including customers include MuleSoft,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Fastest-growing database to drive 27,500 GitHub stars Over 750,000 daily active instances » more | 2 Million+ lifetime clusters deployed, 6.5K+ GitHub stars, 7K YugabyteDB Community... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Open source core with closed source clustering available either on-premise or on... » more | Apache 2.0 license for the database » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | What is DevRel at InfluxData An Introductory Guide to Grafana Alerts What to Expect When You’re Expecting InfluxDB: A Guide Introduction to Apache Iceberg Converting Timestamp to Date in Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | Graph Engine former name: Trinity | InfluxDB | TerarkDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Why Build a Time Series Data Platform? Time Series DBMS are the database category with the fastest increase in popularity Time Series DBMS as a new trend? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Trinity Open source Microsoft Graph Engine takes on Neo4j Aerospike Is Now a Graph Database, Too IBM releases Graph, a service that can outperform SQL databases The graph analytics landscape 2019 - DataScienceCentral.com provided by Google News | Introducing Amazon Timestream for InfluxDB: A managed service for the popular open source time-series database ... Amazon Timestream: Managed InfluxDB for Time Series Data InfluxData Collaborating with AWS to Bring InfluxDB and Time Series Analytics to Developers Around the World How the FDAP Stack Gives InfluxDB 3.0 Real-Time Speed, Efficiency Run and manage open source InfluxDB databases with Amazon Timestream | Amazon Web Services provided by Google News | YugabyteDB Becomes First Distributed SQL Database Vendor to Complete CIS Benchmark Yugabyte Achieves PCI DSS Level 1 Compliance, Validating Secure and Scalable Distributed PostgreSQL for ... Yugabyte Named in the 2023 Gartner® Magic Quadrant™ for Cloud Database Management Systems The surprising link between Formula One and enterprise PostgreSQL optimisation YugabyteDB 2.21 Introduces Industry's First Native Disaster Recovery Orchestration Solution for a Distributed SQL ... provided by Google News |
Share this page