DBMS > EJDB vs. InfluxDB vs. Lovefield vs. Tarantool vs. VoltDB
System Properties Comparison EJDB vs. InfluxDB vs. Lovefield vs. Tarantool vs. VoltDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EJDB Xexclude from comparison | InfluxDB Xexclude from comparison | Lovefield Xexclude from comparison | Tarantool Xexclude from comparison | VoltDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | DBMS for storing time series, events and metrics | Embeddable relational database for web apps written in pure JavaScript | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | Distributed In-Memory NewSQL RDBMS Used for OLTP applications with a high frequency of relatively simple transactions, that can hold all their data in memory | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Time Series DBMS | Relational DBMS | Document store Key-value store Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS with GEO package | Spatial DBMS with Tarantool/GIS extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Softmotions/ejdb | www.influxdata.com/products/influxdb-overview | google.github.io/lovefield | www.tarantool.io | www.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/Softmotions/ejdb/blob/master/README.md | docs.influxdata.com/influxdb | github.com/google/lovefield/blob/master/docs/spec_index.md | www.tarantool.io/en/doc | docs.voltdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | VK | VoltDB Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2014 | 2008 | 2010 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.7.6, April 2024 | 2.1.12, February 2017 | 2.10.0, May 2022 | 11.3, April 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPLv2 | Open Source MIT-License; commercial enterprise version available | Open Source Apache 2.0 | Open Source BSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise | Open Source AGPL for Community Edition, commercial license for Enterprise, AWS, and Pro Editions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | C | Go | JavaScript | C and C++ | Java, C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | Linux OS X through Homebrew | server-less, requires a JavaScript environment (browser, Node.js) tested with Chrome, Firefox, IE, Safari | BSD Linux macOS | Linux OS X for development | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, bool, date, object_id | Numeric data and Strings | yes | string, double, decimal, uuid, integer, blob, boolean, datetime | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | no | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like query language | SQL-like query language via JavaScript builder pattern | Full-featured ANSI SQL support | yes only a subset of SQL 99 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | in-process shared library | HTTP API JSON over UDP | Open binary protocol | Java API JDBC RESTful HTTP/JSON API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | .Net Clojure Erlang Go Haskell Java JavaScript JavaScript (Node.js) Lisp Perl PHP Python R Ruby Rust Scala | JavaScript | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | C# C++ Erlang not officially supported Go Java JavaScript Node.js PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | no | Lua, C and SQL stored procedures | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | Using read-only observers | yes, before/after data modification events, on replication events, client session events | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding in enterprise version only | none | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | selectable replication factor in enterprise version only | none | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Casual consistency across sharding partitions Eventual consistency within replicaset partition when using asyncronous replication Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition when using Raft | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | no | yes | yes | no FOREIGN KEY constraints are not supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | ACID | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | ACID Transactions are executed single-threaded within stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | yes | yes, cooperative multitasking | yes Data access is serialized by the server | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes, by using IndexedDB or the cloud service Firebase Realtime Database | yes, write ahead logging | yes Snapshots and command logging | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Depending on used storage engine | yes using MemoryDB | yes, full featured in-memory storage engine with persistence | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | simple rights management via user accounts | no | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | Users and roles with access to stored procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | InfluxDB | Lovefield | Tarantool | VoltDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | InfluxData is the creator of InfluxDB , the open source time series database. It... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Time to Value InfluxDB is available in all the popular languages and frameworks,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | IoT & Sensor Monitoring Developers are witnessing the instrumentation of every available... » 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Open source core with closed source clustering available either on-premise or on... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | 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 A Detailed Guide to C# TimeSpan | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | InfluxDB | Lovefield | Tarantool | VoltDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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? | Data processing speed and reliability: in-memory synchronous replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the 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 | Deploying Tarantool Cartridge applications with zero effort (Part 1) VShard — horizontal scaling in Tarantool Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel provided by Google News | Unveiling Volt Active Data's game-changing approach to limitless app performance VoltDB Launches Active(N) Lossless Cross Data Center Replication VoltDB Turns to Real-Time Analytics with NewSQL Database VoltDB Upgrades Power, Security of Its In-Memory Database VoltDB Adds Geospatial Support, Cross-Site Replication provided by Google News |
Share this page