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

DBMS > CouchDB vs. Sphinx vs. Tarantool vs. Tkrzw vs. ToroDB

System Properties Comparison CouchDB vs. Sphinx vs. Tarantool vs. Tkrzw vs. ToroDB

Editorial information provided by DB-Engines
NameCouchDB infostands for "Cluster Of Unreliable Commodity Hardware"  Xexclude from comparisonSphinx  Xexclude from comparisonTarantool  Xexclude from comparisonTkrzw infoSuccessor of Tokyo Cabinet and Kyoto Cabinet  Xexclude from comparisonToroDB  Xexclude from comparison
ToroDB seems to be discontinued. Therefore it is excluded from the DB-Engines Ranking.
DescriptionA native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones.Open source search engine for searching in data from different sources, e.g. relational databasesIn-memory computing platform with a flexible data schema for efficiently building high-performance applicationsA concept of libraries, allowing an application program to store and query key-value pairs in a file. Successor of Tokyo Cabinet and Kyoto CabinetA MongoDB-compatible JSON document store, built on top of PostgreSQL
Primary database modelDocument storeSearch engineDocument store
Key-value store
Relational DBMS
Key-value storeDocument store
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
Score8.30
Rank#47  Overall
#7  Document stores
Score5.95
Rank#55  Overall
#5  Search engines
Score1.67
Rank#143  Overall
#25  Document stores
#25  Key-value stores
#65  Relational DBMS
Score0.07
Rank#372  Overall
#57  Key-value stores
Websitecouchdb.apache.orgsphinxsearch.comwww.tarantool.iodbmx.net/­tkrzwgithub.com/­torodb/­server
Technical documentationdocs.couchdb.org/­en/­stablesphinxsearch.com/­docswww.tarantool.io/­en/­doc
DeveloperApache Software Foundation infoApache top-level project, originally developed by Damien Katz, a former Lotus Notes developerSphinx Technologies Inc.VKMikio Hirabayashi8Kdata
Initial release20052001200820202016
Current release3.3.3, December 20233.5.1, February 20232.10.0, May 20220.9.3, August 2020
License infoCommercial or Open SourceOpen Source infoApache version 2Open Source infoGPL version 2, commercial licence availableOpen Source infoBSD-2, source-available extensions (modules), commercial licenses for Tarantool EnterpriseOpen Source infoApache Version 2.0Open Source infoAGPL-V3
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 languageErlangC++C and C++C++Java
Server operating systemsAndroid
BSD
Linux
OS X
Solaris
Windows
FreeBSD
Linux
NetBSD
OS X
Solaris
Windows
BSD
Linux
macOS
Linux
macOS
All OS with a Java 7 VM
Data schemeschema-freeyesFlexible data schema: relational definition for tables with ability to store json-like documents in columnsschema-freeschema-free
Typing infopredefined data types such as float or datenonostring, double, decimal, uuid, integer, blob, boolean, datetimenoyes infostring, integer, double, boolean, date, object_id
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 indexesyes infovia viewsyes infofull-text index on all search fieldsyes
SQL infoSupport of SQLnoSQL-like query language (SphinxQL)Full-featured ANSI SQL supportno
APIs and other access methodsRESTful HTTP/JSON APIProprietary protocolOpen binary protocol
Supported programming languagesC
C#
ColdFusion
Erlang
Haskell
Java
JavaScript
Lisp
Lua
Objective-C
OCaml
Perl
PHP
PL/SQL
Python
Ruby
Smalltalk
C++ infounofficial client library
Java
Perl infounofficial client library
PHP
Python
Ruby infounofficial client library
C
C#
C++
Erlang
Go
Java
JavaScript
Lua
Perl
PHP
Python
Rust
C++
Java
Python
Ruby
Server-side scripts infoStored proceduresView functions in JavaScriptnoLua, C and SQL stored proceduresno
Triggersyesnoyes, before/after data modification events, on replication events, client session eventsnono
Partitioning methods infoMethods for storing different data on different nodesSharding infoimproved architecture with release 2.0Sharding infoPartitioning is done manually, search queries against distributed index is supportedSharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime.noneSharding
Replication methods infoMethods for redundantly storing data on multiple nodesMulti-source replication
Source-replica replication
noneAsynchronous replication with multi-master option
Configurable replication topology (full-mesh, chain, star)
Synchronous quorum replication (with Raft)
noneSource-replica replication
MapReduce infoOffers an API for user-defined Map/Reduce methodsyesnono
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
Immediate ConsistencyEventual Consistency
Immediate Consistency
Foreign keys infoReferential integritynonoyesnono
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datano infoatomic operations within a single document possiblenoACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactionsno
Concurrency infoSupport for concurrent manipulation of datayes infostrategy: optimistic lockingyesyes, cooperative multitaskingyesyes
Durability infoSupport for making data persistentyesyes infoThe original contents of fields are not stored in the Sphinx index.yes, write ahead loggingyesyes
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.noyes, full featured in-memory storage engine with persistenceyes infousing specific database classes
User concepts infoAccess controlAccess rights for users can be defined per databasenoAccess Control Lists
Mutual TLS authentication for Tarantol Enterprise
Password based authentication
Role-based access control (RBAC) and LDAP for Tarantol Enterprise
Users and Roles
noAccess rights for 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
CouchDB infostands for "Cluster Of Unreliable Commodity Hardware"SphinxTarantoolTkrzw infoSuccessor of Tokyo Cabinet and Kyoto CabinetToroDB
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

The DB-Engines ranking includes now search engines
4 February 2013, Paul Andlinger

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

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

Apache CouchDB: The Definitive Introduction
28 August 2014, InfoQ.com

provided by Google News

Switching From Sphinx to MkDocs Documentation — What Did I Gain and Lose
2 February 2024, Towards Data Science

Manticore is a Faster Alternative to Elasticsearch in C++
25 July 2022, hackernoon.com

Perplexity AI: From Its Use To Operation, Everything You Need To Know About Google's Newest Challenger
11 January 2024, Free Press Journal

The Pirate Bay was recently down for over a week due to a DDoS attack
29 October 2019, The Hacker News

How to Build 600+ Links in One Month
4 September 2020, Search Engine Journal

provided by Google News

Tarantool Announces New Enterprise Version With Enhanced Scaling and Monitoring Capabilities
18 May 2018, Newswire

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

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

Present your product here