DB-EnginesExtremeDB for everyone with an RTOSEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > Datomic vs. PouchDB vs. SpatiaLite vs. SQLite vs. Tarantool

System Properties Comparison Datomic vs. PouchDB vs. SpatiaLite vs. SQLite vs. Tarantool

Editorial information provided by DB-Engines
NameDatomic  Xexclude from comparisonPouchDB  Xexclude from comparisonSpatiaLite  Xexclude from comparisonSQLite  Xexclude from comparisonTarantool  Xexclude from comparison
DescriptionDatomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durabilityJavaScript DBMS with an API inspired by CouchDBSpatial extension of SQLiteWidely used embeddable, in-process RDBMSIn-memory computing platform with a flexible data schema for efficiently building high-performance applications
Primary database modelRelational DBMSDocument storeSpatial DBMSRelational DBMSDocument store
Key-value store
Relational DBMS
Secondary database modelsRelational DBMSSpatial DBMS infowith Tarantool/GIS extension
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score1.59
Rank#150  Overall
#69  Relational DBMS
Score2.28
Rank#115  Overall
#21  Document stores
Score1.60
Rank#149  Overall
#3  Spatial DBMS
Score114.32
Rank#10  Overall
#7  Relational DBMS
Score1.72
Rank#144  Overall
#25  Document stores
#25  Key-value stores
#66  Relational DBMS
Websitewww.datomic.compouchdb.comwww.gaia-gis.it/­fossil/­libspatialite/­indexwww.sqlite.orgwww.tarantool.io
Technical documentationdocs.datomic.compouchdb.com/­guideswww.gaia-gis.it/­gaia-sins/­spatialite_topics.htmlwww.sqlite.org/­docs.htmlwww.tarantool.io/­en/­doc
DeveloperCognitectApache Software FoundationAlessandro FurieriDwayne Richard HippVK
Initial release20122012200820002008
Current release1.0.6735, June 20237.1.1, June 20195.0.0, August 20203.45.3  (15 April 2024), April 20242.10.0, May 2022
License infoCommercial or Open Sourcecommercial infolimited edition freeOpen SourceOpen Source infoMPL 1.1, GPL v2.0 or LGPL v2.1Open Source infoPublic DomainOpen 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 languageJava, ClojureJavaScriptC++CC and C++
Server operating systemsAll OS with a Java VMserver-less, requires a JavaScript environment (browser, Node.js)server-lessserver-lessBSD
Linux
macOS
Data schemeyesschema-freeyesyes infodynamic column typesFlexible data schema: relational definition for tables with ability to store json-like documents in columns
Typing infopredefined data types such as float or dateyesnoyesyes infonot rigid because of 'dynamic typing' concept.string, 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.nonononono
Secondary indexesyesyes infovia viewsyesyesyes
SQL infoSupport of SQLnonoyesyes infoSQL-92 is not fully supportedFull-featured ANSI SQL support
APIs and other access methodsRESTful HTTP APIHTTP REST infoonly for PouchDB Server
JavaScript API
ADO.NET infoinofficial driver
JDBC infoinofficial driver
ODBC infoinofficial driver
Open binary protocol
Supported programming languagesClojure
Java
JavaScriptActionscript
Ada
Basic
C
C#
C++
D
Delphi
Forth
Fortran
Haskell
Java
JavaScript
Lisp
Lua
MatLab
Objective-C
OCaml
Perl
PHP
PL/SQL
Python
R
Ruby
Scala
Scheme
Smalltalk
Tcl
C
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
Server-side scripts infoStored proceduresyes infoTransaction FunctionsView functions in JavaScriptnonoLua, C and SQL stored procedures
TriggersBy using transaction functionsyesyesyesyes, before/after data modification events, on replication events, client session events
Partitioning methods infoMethods for storing different data on different nodesnone infoBut extensive use of caching in the application peersSharding infowith a proxy-based framework, named couchdb-loungenonenoneSharding, 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 nodesnone infoBut extensive use of caching in the application peersMulti-source replication infoalso with CouchDB databases
Source-replica replication infoalso with CouchDB databases
nonenoneAsynchronous 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 methodsnoyesnono
Consistency concepts infoMethods to ensure consistency in a distributed systemImmediate ConsistencyEventual ConsistencyCasual 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 integritynonoyesyesyes
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of dataACIDnoACIDACIDACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions
Concurrency infoSupport for concurrent manipulation of datayesyesyes infovia file-system locksyes, cooperative multitasking
Durability infoSupport for making data persistentyes infousing external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others)yes infoby using IndexedDB, WebSQL or LevelDB as backendyesyesyes, write ahead logging
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.yes inforecommended only for testing and developmentyesyesyesyes, full featured in-memory storage engine with persistence
User concepts infoAccess controlnonononoAccess 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
3rd partiesNavicat for SQLite is a powerful and comprehensive SQLite GUI that provides a complete set of functions for database management and development.
» more

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

More resources
DatomicPouchDBSpatiaLiteSQLiteTarantool
DB-Engines blog posts

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

show all

Spatial database management systems
6 April 2021, Matthias Gelbmann

show all

Big gains for Relational Database Management Systems in DB-Engines Ranking
2 February 2016, 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

Nubank buys firm behind Clojure programming language
28 July 2020, Finextra

Zoona Case Study
16 December 2017, AWS Blog

Architecting Software for Leverage
13 November 2021, InfoQ.com

TerminusDB Takes on Data Collaboration with a git-Like Approach
1 December 2020, The New Stack

Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic
24 July 2020, LatamList

provided by Google News

Building an Offline First App with PouchDB — SitePoint
10 March 2014, SitePoint

Getting Started with PouchDB Client-Side JavaScript Database — SitePoint
7 September 2016, SitePoint

3 Reasons To Think Offline First
22 March 2017, ibm.com

Create Offline Web Apps Using Service Workers & PouchDB — SitePoint
7 March 2017, SitePoint

Offline-first web and mobile apps: Top frameworks and components
22 January 2019, TechBeacon

provided by Google News

How to work with Dapper and SQLite in ASP.NET Core
10 May 2024, InfoWorld

SQLite Vulnerability Could Put Thousands of Apps at Risk
22 March 2024, Dark Reading

SQLite's new support for binary JSON is similar but different from a PostgreSQL feature • DEVCLASS
16 January 2024, DevClass

Universal API Access from Postgres and SQLite
27 February 2024, oreilly.com

SQLite 3.44 Extends Aggregate Functions
6 November 2023, 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

AllegroGraph logo

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

Milvus logo

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

Neo4j logo

See for yourself how a graph database can make your life easier.
Use Neo4j online 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

RaimaDB logo

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

Present your product here