DB-EnginesExtremeDB: mitigate connectivity issues in a DBMSEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > Apache Drill vs. PouchDB vs. Tarantool vs. Yaacomo

System Properties Comparison Apache Drill vs. PouchDB vs. Tarantool vs. Yaacomo

Please select another system to include it in the comparison.

Editorial information provided by DB-Engines
NameApache Drill  Xexclude from comparisonPouchDB  Xexclude from comparisonTarantool  Xexclude from comparisonYaacomo  Xexclude from comparison
Yaacomo seems to be discontinued and is removed from the DB-Engines ranking
DescriptionSchema-free SQL Query Engine for Hadoop, NoSQL and Cloud StorageJavaScript DBMS with an API inspired by CouchDBIn-memory computing platform with a flexible data schema for efficiently building high-performance applicationsOpenCL based in-memory RDBMS, designed for efficiently utilizing the hardware via parallel computing
Primary database modelDocument store
Relational DBMS
Document storeDocument store
Key-value store
Relational DBMS
Relational DBMS
Secondary database modelsSpatial DBMS infowith Tarantool/GIS extension
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score2.02
Rank#124  Overall
#22  Document stores
#59  Relational DBMS
Score2.34
Rank#112  Overall
#21  Document stores
Score1.67
Rank#143  Overall
#25  Document stores
#25  Key-value stores
#65  Relational DBMS
Websitedrill.apache.orgpouchdb.comwww.tarantool.ioyaacomo.com
Technical documentationdrill.apache.org/­docspouchdb.com/­guideswww.tarantool.io/­en/­doc
DeveloperApache Software FoundationApache Software FoundationVKQ2WEB GmbH
Initial release2012201220082009
Current release1.20.3, January 20237.1.1, June 20192.10.0, May 2022
License infoCommercial or Open SourceOpen Source infoApache Version 2Open SourceOpen Source infoBSD-2, source-available extensions (modules), commercial licenses for Tarantool Enterprisecommercial
Cloud-based only infoOnly available as a cloud servicenononono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageJavaScriptC and C++
Server operating systemsLinux
OS X
Windows
server-less, requires a JavaScript environment (browser, Node.js)BSD
Linux
macOS
Android
Linux
Windows
Data schemeschema-freeschema-freeFlexible data schema: relational definition for tables with ability to store json-like documents in columnsyes
Typing infopredefined data types such as float or dateyesnostring, double, decimal, uuid, integer, blob, boolean, datetimeyes
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.nononono
Secondary indexesnoyes infovia viewsyesyes
SQL infoSupport of SQLSQL SELECT statement is SQL:2003 compliantnoFull-featured ANSI SQL supportyes
APIs and other access methodsJDBC
ODBC
RESTful HTTP API
HTTP REST infoonly for PouchDB Server
JavaScript API
Open binary protocolJDBC
ODBC
Supported programming languagesC++JavaScriptC
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
Server-side scripts infoStored proceduresuser defined functionsView functions in JavaScriptLua, C and SQL stored procedures
Triggersnoyesyes, before/after data modification events, on replication events, client session eventsyes
Partitioning methods infoMethods for storing different data on different nodesShardingSharding 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.horizontal partitioning
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)
Source-replica replication
MapReduce infoOffers an API for user-defined Map/Reduce methodsyesyesno
Consistency concepts infoMethods to ensure consistency in a distributed systemnoneEventual 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
Immediate Consistency
Foreign keys infoReferential integritynonoyesyes
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datanonoACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactionsACID
Concurrency infoSupport for concurrent manipulation of datayesyes, cooperative multitaskingyes
Durability infoSupport for making data persistentDepending on the underlying data sourceyes infoby using IndexedDB, WebSQL or LevelDB as backendyes, write ahead loggingyes
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.Depending on the underlying data sourceyesyes, full featured in-memory storage engine with persistenceyes
User concepts infoAccess controlDepending on the underlying data sourcenoAccess Control Lists
Mutual TLS authentication for Tarantol Enterprise
Password based authentication
Role-based access control (RBAC) and LDAP for Tarantol Enterprise
Users and Roles
fine grained access rights according to SQL-standard

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 DrillPouchDBTarantoolYaacomo
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

MapR to Speak on Stream Processing Systems, Apache Spark and Drill at Industry Events in January
31 May 2024, Yahoo Movies UK

Apache Drill case study: A tutorial on processing CSV files
9 June 2016, TheServerSide.com

Apache Drill vs. Apache Spark — Which SQL query engine is better for you?
23 September 2019, Towards Data Science

Apache Drill Poised to Crack Tough Data Challenges
19 May 2015, Datanami

Apache Drill Eliminates ETL, Data Transformation for MapR Database
11 April 2016, The New Stack

provided by Google News

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

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

3 Reasons To Think Offline First
22 March 2017, IBM

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

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

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

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

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