DB-EnginesInfluxDB: Focus on building software with an easy-to-use serverless, scalable time series platformEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > Apache IoTDB vs. Derby vs. GeoMesa vs. LokiJS vs. Tarantool

System Properties Comparison Apache IoTDB vs. Derby vs. GeoMesa vs. LokiJS vs. Tarantool

Editorial information provided by DB-Engines
NameApache IoTDB  Xexclude from comparisonDerby infooften called Apache Derby, originally IBM Cloudscape; contained in the Java SDK as JavaDB  Xexclude from comparisonGeoMesa  Xexclude from comparisonLokiJS  Xexclude from comparisonTarantool  Xexclude from comparison
DescriptionAn IoT native database with high performance for data management and analysis, deployable on the edge and the cloud and integrated with Hadoop, Spark and FlinkFull-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server.GeoMesa is a distributed spatio-temporal DBMS based on various systems as storage layer.In-memory JavaScript DBMSIn-memory computing platform with a flexible data schema for efficiently building high-performance applications
Primary database modelTime Series DBMSRelational DBMSSpatial DBMSDocument storeDocument store
Key-value store
Relational DBMS
Secondary database modelsSpatial DBMS infowith Tarantool/GIS extension
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score1.18
Rank#173  Overall
#15  Time Series DBMS
Score4.71
Rank#69  Overall
#37  Relational DBMS
Score0.78
Rank#213  Overall
#4  Spatial DBMS
Score0.43
Rank#264  Overall
#42  Document stores
Score1.72
Rank#144  Overall
#25  Document stores
#25  Key-value stores
#66  Relational DBMS
Websiteiotdb.apache.orgdb.apache.org/­derbywww.geomesa.orggithub.com/­techfort/­LokiJSwww.tarantool.io
Technical documentationiotdb.apache.org/­UserGuide/­Master/­QuickStart/­QuickStart.htmldb.apache.org/­derby/­manuals/­index.htmlwww.geomesa.org/­documentation/­stable/­user/­index.htmltechfort.github.io/­LokiJSwww.tarantool.io/­en/­doc
DeveloperApache Software FoundationApache Software FoundationCCRi and othersVK
Initial release20181997201420142008
Current release1.1.0, April 202310.17.1.0, November 20234.0.5, February 20242.10.0, May 2022
License infoCommercial or Open SourceOpen Source infoApache Version 2.0Open Source infoApache version 2Open Source infoApache License 2.0Open SourceOpen Source infoBSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise
Cloud-based only infoOnly available as a cloud servicenonononono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageJavaJavaScalaJavaScriptC and C++
Server operating systemsAll OS with a Java VM (>= 1.8)All OS with a Java VMserver-less, requires a JavaScript environment (browser, Node.js)BSD
Linux
macOS
Data schemeyesyesyesschema-freeFlexible data schema: relational definition for tables with ability to store json-like documents in columns
Typing infopredefined data types such as float or dateyesyesyesnostring, double, decimal, uuid, integer, blob, boolean, datetime
XML support infoSome form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT.noyesnonono
Secondary indexesyesyesyesyes infovia viewsyes
SQL infoSupport of SQLSQL-like query languageyesnonoFull-featured ANSI SQL support
APIs and other access methodsJDBC
Native API
JDBCJavaScript APIOpen binary protocol
Supported programming languagesC
C#
C++
Go
Java
Python
Scala
JavaJavaScriptC
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
Server-side scripts infoStored proceduresyesJava Stored ProceduresnoView functions in JavaScriptLua, C and SQL stored procedures
Triggersyesyesnoyesyes, before/after data modification events, on replication events, client session events
Partitioning methods infoMethods for storing different data on different nodeshorizontal partitioning (by time range) + vertical partitioning (by deviceId)nonedepending on storage layernoneSharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime.
Replication methods infoMethods for redundantly storing data on multiple nodesselectable replication methods; using Raft/IoTConsensus algorithm to ensure strong/eventual data consistency among multiple replicasSource-replica replicationdepending on storage layernoneAsynchronous replication with multi-master option
Configurable replication topology (full-mesh, chain, star)
Synchronous quorum replication (with Raft)
MapReduce infoOffers an API for user-defined Map/Reduce methodsIntegration with Hadoop and Sparknoyesyes
Consistency concepts infoMethods to ensure consistency in a distributed systemEventual Consistency
Strong Consistency with Raft
Immediate Consistencydepending on storage layernoneCasual consistency across sharding partitions
Eventual consistency within replicaset partition infowhen using asyncronous replication
Immediate Consistency within single instance
Sequential consistency including linearizable read within replicaset partition infowhen using Raft
Foreign keys infoReferential integritynoyesnonoyes
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datanoACIDnono infoatomic operations within a single collection possibleACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions
Concurrency infoSupport for concurrent manipulation of datayesyesyesyes, cooperative multitasking
Durability infoSupport for making data persistentyesyesyesyes infoSerialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser.yes, write ahead logging
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.yesyesdepending on storage layeryesyes, full featured in-memory storage engine with persistence
User concepts infoAccess controlyesfine grained access rights according to SQL-standardyes infodepending on the DBMS used for storagenoAccess Control Lists
Mutual TLS authentication for Tarantol Enterprise
Password based authentication
Role-based access control (RBAC) and LDAP for Tarantol Enterprise
Users and Roles

More information provided by the system vendor

We invite representatives of system vendors to contact us for updating and extending the system information,
and for displaying vendor-provided information such as key customers, competitive advantages and market metrics.

Related products and services

We invite representatives of vendors of related products to contact us for presenting information about their offerings here.

More resources
Apache IoTDBDerby infooften called Apache Derby, originally IBM Cloudscape; contained in the Java SDK as JavaDBGeoMesaLokiJSTarantool
DB-Engines blog posts

Spatial database management systems
6 April 2021, Matthias Gelbmann

show all

New kids on the block: database management systems implemented in JavaScript
1 December 2014, Matthias Gelbmann

show all

Data processing speed and reliability: in-memory synchronous replication
9 November 2021,  Vladimir Perepelytsya, Tarantool (sponsor) 

show all

Recent citations in the news

TsFile: A Standard Format for IoT Time Series Data
27 February 2024, The New Stack

AMD EPYC 8324P / 8324PN Siena 32-Core Siena Linux Server Performance Review
10 October 2023, Phoronix

Apache Promotes IoT Database Project
25 September 2020, Datanami

Benchmarking The Performance Impact To AMD Inception Mitigations
15 August 2023, Phoronix

IoTDB Provides Data Management for Industrial Edge IT
15 October 2020, The New Stack

provided by Google News

JDBC tutorial: Easy installation and setup with Apache Derby
20 December 2019, TheServerSide.com

The Arrival of Java 20
21 March 2023, Oracle

Installing Apache Hive 3.1.2 on Windows 10 | by Hadi Fadlallah
3 May 2020, Towards Data Science

The Apache® Software Foundation Announces 18 Years of Open Source Leadership
28 March 2017, GlobeNewswire

Payara Foundation Releases Payara Server 5 and Payara Micro 5
30 March 2018, InfoQ.com

provided by Google News

LokiJS - A JavaScript Database
18 November 2014, iProgrammer

LokiJS Reaches 1.4
8 July 2016, iProgrammer

provided by Google News

Deploying Tarantool Cartridge applications with zero effort (Part 1)
16 December 2019, Хабр

VShard — horizontal scaling in Tarantool
7 March 2019, Хабр

Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel
18 December 2019, Хабр

provided by Google News



Share this page

Featured Products

Neo4j logo

See for yourself how a graph database can make your life easier.
Use Neo4j online for free.

RaimaDB logo

RaimaDB, embedded database for mission-critical applications. When performance, footprint and reliability matters.
Try RaimaDB for free.

Datastax Astra logo

Bring all your data to Generative AI applications with vector search enabled by the most scalable
vector database available.
Try for Free

Milvus logo

Vector database designed for GenAI, fully equipped for enterprise implementation.
Try Managed Milvus for Free

AllegroGraph logo

Graph Database Leader for AI Knowledge Graph Applications - The Most Secure Graph Database Available.
Free Download

Present your product here