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

DBMS > Apache Drill vs. CouchDB vs. Datomic vs. mSQL vs. Tarantool

System Properties Comparison Apache Drill vs. CouchDB vs. Datomic vs. mSQL vs. Tarantool

Editorial information provided by DB-Engines
NameApache Drill  Xexclude from comparisonCouchDB infostands for "Cluster Of Unreliable Commodity Hardware"  Xexclude from comparisonDatomic  Xexclude from comparisonmSQL infoMini SQL  Xexclude from comparisonTarantool  Xexclude from comparison
DescriptionSchema-free SQL Query Engine for Hadoop, NoSQL and Cloud StorageA native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones.Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durabilitymSQL (Mini SQL) is a simple and lightweight RDBMSIn-memory computing platform with a flexible data schema for efficiently building high-performance applications
Primary database modelDocument store
Relational DBMS
Document storeRelational DBMSRelational DBMSDocument store
Key-value store
Relational DBMS
Secondary database modelsSpatial DBMS infousing the Geocouch extensionSpatial 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
Score8.30
Rank#47  Overall
#7  Document stores
Score1.66
Rank#144  Overall
#66  Relational DBMS
Score1.27
Rank#169  Overall
#76  Relational DBMS
Score1.67
Rank#143  Overall
#25  Document stores
#25  Key-value stores
#65  Relational DBMS
Websitedrill.apache.orgcouchdb.apache.orgwww.datomic.comhughestech.com.au/­products/­msqlwww.tarantool.io
Technical documentationdrill.apache.org/­docsdocs.couchdb.org/­en/­stabledocs.datomic.comwww.tarantool.io/­en/­doc
DeveloperApache Software FoundationApache Software Foundation infoApache top-level project, originally developed by Damien Katz, a former Lotus Notes developerCognitectHughes TechnologiesVK
Initial release20122005201219942008
Current release1.20.3, January 20233.3.3, December 20231.0.7075, December 20234.4, October 20212.10.0, May 2022
License infoCommercial or Open SourceOpen Source infoApache Version 2Open Source infoApache version 2commercial infolimited edition freecommercial infofree licenses can be providedOpen 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 languageErlangJava, ClojureCC and C++
Server operating systemsLinux
OS X
Windows
Android
BSD
Linux
OS X
Solaris
Windows
All OS with a Java VMAIX
HP-UX
Linux
OS X
Solaris SPARC/x86
Windows
BSD
Linux
macOS
Data schemeschema-freeschema-freeyesyesFlexible data schema: relational definition for tables with ability to store json-like documents in columns
Typing infopredefined data types such as float or dateyesnoyesyesstring, 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 indexesnoyes infovia viewsyesyesyes
SQL infoSupport of SQLSQL SELECT statement is SQL:2003 compliantnonoA subset of ANSI SQL is implemented infono subqueries, aggregate functions, views, foreign keys, triggersFull-featured ANSI SQL support
APIs and other access methodsJDBC
ODBC
RESTful HTTP API
RESTful HTTP/JSON APIRESTful HTTP APIJDBC
ODBC
Open binary protocol
Supported programming languagesC++C
C#
ColdFusion
Erlang
Haskell
Java
JavaScript
Lisp
Lua
Objective-C
OCaml
Perl
PHP
PL/SQL
Python
Ruby
Smalltalk
Clojure
Java
C
C++
Delphi
Java
Perl
PHP
Tcl
C
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
Server-side scripts infoStored proceduresuser defined functionsView functions in JavaScriptyes infoTransaction FunctionsnoLua, C and SQL stored procedures
TriggersnoyesBy using transaction functionsnoyes, before/after data modification events, on replication events, client session events
Partitioning methods infoMethods for storing different data on different nodesShardingSharding infoimproved architecture with release 2.0none infoBut extensive use of caching in the application peersnoneSharding, 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
Source-replica replication
none infoBut extensive use of caching in the application peersnoneAsynchronous 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 methodsyesyesnono
Consistency concepts infoMethods to ensure consistency in a distributed systemnoneEventual ConsistencyImmediate ConsistencynoneCasual 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 integritynonononoyes
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datanono infoatomic operations within a single document possibleACIDnoACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions
Concurrency infoSupport for concurrent manipulation of datayesyes infostrategy: optimistic lockingyesnoyes, cooperative multitasking
Durability infoSupport for making data persistentDepending on the underlying data sourceyesyes infousing external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others)yesyes, write ahead logging
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.Depending on the underlying data sourcenoyes inforecommended only for testing and developmentnoyes, full featured in-memory storage engine with persistence
User concepts infoAccess controlDepending on the underlying data sourceAccess rights for users can be defined per databasenonoAccess 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 DrillCouchDB infostands for "Cluster Of Unreliable Commodity Hardware"DatomicmSQL infoMini SQLTarantool
DB-Engines blog posts

Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month
2 June 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

How to Automate A Blog Post App Deployment With GitHub Actions, Node.js, CouchDB, and Aptible
4 December 2023, hackernoon.com

How to install the CouchDB NoSQL database on Debian Server 11
16 June 2022, TechRepublic

IBM Cloudant pulls plan to fund new foundational layer for CouchDB
15 March 2022, The Register

CouchDB 3.0 ends admin party era • DEVCLASS
27 February 2020, DevClass

Tracking Expenses with CouchDB and Angular — SitePoint
28 August 2014, SitePoint

provided by Google News

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

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

James Dixon Imagines A Data Lake That Matters
26 January 2015, Forbes

Zoona Case Study
16 December 2017, AWS Blog

provided by Google News

Higher Education PS rules out ghost students before PAC
29 November 2018, diggers.news

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

Milvus logo

Vector database designed for GenAI, fully equipped for enterprise implementation.
Try Managed Milvus 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

Neo4j logo

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

Present your product here