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 > PouchDB vs. SurrealDB vs. Tarantool

System Properties Comparison PouchDB vs. SurrealDB vs. Tarantool

Please select another system to include it in the comparison.

Editorial information provided by DB-Engines
NamePouchDB  Xexclude from comparisonSurrealDB  Xexclude from comparisonTarantool  Xexclude from comparison
DescriptionJavaScript DBMS with an API inspired by CouchDBA fully ACID transactional, developer-friendly, multi-model DBMSIn-memory computing platform with a flexible data schema for efficiently building high-performance applications
Primary database modelDocument storeDocument store
Graph DBMS
Document 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
Score2.28
Rank#115  Overall
#21  Document stores
Score0.86
Rank#203  Overall
#34  Document stores
#18  Graph DBMS
Score1.72
Rank#144  Overall
#25  Document stores
#25  Key-value stores
#66  Relational DBMS
Websitepouchdb.comsurrealdb.comwww.tarantool.io
Technical documentationpouchdb.com/­guidessurrealdb.com/­docswww.tarantool.io/­en/­doc
DeveloperApache Software FoundationSurrealDB LtdVK
Initial release201220222008
Current release7.1.1, June 2019v1.1.1, January 20242.10.0, May 2022
License infoCommercial or Open SourceOpen SourceOpen SourceOpen Source infoBSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprise
Cloud-based only infoOnly available as a cloud servicenonono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageJavaScriptRustC and C++
Server operating systemsserver-less, requires a JavaScript environment (browser, Node.js)Linux
macOS
Windows
BSD
Linux
macOS
Data schemeschema-freeschema-freeFlexible data schema: relational definition for tables with ability to store json-like documents in columns
Typing infopredefined data types such as float or datenoyesstring, 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.nono
Secondary indexesyes infovia viewsyes
SQL infoSupport of SQLnoSQL-like query languageFull-featured ANSI SQL support
APIs and other access methodsHTTP REST infoonly for PouchDB Server
JavaScript API
GraphQL
RESTful HTTP API
WebSocket
Open binary protocol
Supported programming languagesJavaScriptDeno
Go
JavaScript (Node.js)
Rust
C
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
Server-side scripts infoStored proceduresView functions in JavaScriptLua, C and SQL stored procedures
Triggersyesyes, before/after data modification events, on replication events, client session events
Partitioning methods infoMethods for storing different data on different nodesSharding infowith a proxy-based framework, named couchdb-loungeSharding, 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 nodesMulti-source replication infoalso with CouchDB databases
Source-replica replication infoalso with CouchDB databases
Asynchronous 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 methodsyesno
Consistency concepts infoMethods to ensure consistency in a distributed systemEventual 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 integritynoyes
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datanoACIDACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions
Concurrency infoSupport for concurrent manipulation of datayesyes, cooperative multitasking
Durability infoSupport for making data persistentyes infoby using IndexedDB, WebSQL or LevelDB as backendyesyes, write ahead logging
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.yesyes, full featured in-memory storage engine with persistence
User concepts infoAccess controlnoyes, based on authentication and database rulesAccess 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
PouchDBSurrealDBTarantool
DB-Engines blog posts

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

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

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

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

provided by Google News

Meet Tobie Morgan Hitchcock, CEO & Co-Founder Of SurrealDB
25 April 2024, TechRound

Cloud, privacy and AI: Trends defining the future of data and databases
27 September 2023, Sifted

SurrealDB raises $6M for its database-as-a-service offering
4 January 2023, TechCrunch

New Investment: Lago – Matt Turck
14 March 2024, Matt Turck

Introducing SurrealDB: A Quantum Leap in Database Technology
11 September 2023, TechRound

provided by Google News

TaranHouse: New Big Data Warehouse Announced by Tarantool
4 April 2018, Newswire

In-Memory Showdown: Redis vs. Tarantool
4 April 2023, Хабр

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

Deploying Tarantool Cartridge applications with zero effort (Part 2)
13 April 2020, Хабр

Тarantool Cartridge: Sharding Lua Backend in Three Lines
9 October 2019, Хабр

provided by Google News



Share this page

Featured Products

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

SingleStore logo

Database for your real-time AI and Analytics Apps.
Try it today.

RaimaDB logo

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

Neo4j logo

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

Milvus logo

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

Present your product here