DBMS > Citus vs. PouchDB vs. RRDtool vs. Vitess
System Properties Comparison Citus vs. PouchDB vs. RRDtool vs. Vitess
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Citus Xexclude from comparison | PouchDB Xexclude from comparison | RRDtool Xexclude from comparison | Vitess Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Scalable hybrid operational and analytics RDBMS for big data use cases based on PostgreSQL | JavaScript DBMS with an API inspired by CouchDB | Industry standard data logging and graphing tool for time series data. RRD is an acronym for round-robin database. The data is stored in a circular buffer, thus the system storage footprint remains constant over time. | Scalable, distributed, cloud-native DBMS, extending MySQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Time Series DBMS | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.citusdata.com | pouchdb.com | oss.oetiker.ch/rrdtool | vitess.io | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.citusdata.com | pouchdb.com/guides | oss.oetiker.ch/rrdtool/doc | vitess.io/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Tobias Oetiker | The Linux Foundation, PlanetScale | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2012 | 1999 | 2013 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.1, December 2018 | 7.1.1, June 2019 | 1.8.0, 2022 | 15.0.2, December 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source AGPL, commercial license also available | Open Source | Open Source GPL V2 and FLOSS | Open Source Apache Version 2.0, commercial licenses available | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | JavaScript | C Implementations in Java (e.g. RRD4J) and C# available | Go | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | server-less, requires a JavaScript environment (browser, Node.js) | HP-UX Linux | Docker Linux macOS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no | Numeric data only | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | yes specific XML type available, but no XML query functionality | no | no Exporting into and restoring from XML files possible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes via views | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes standard, with numerous extensions | no | no | yes with proprietary extensions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC native C library ODBC streaming API for large objects | HTTP REST only for PouchDB Server JavaScript API | in-process shared library Pipes | ADO.NET JDBC MySQL protocol ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Delphi Java JavaScript (Node.js) Perl PHP Python Tcl | JavaScript | C with librrd library C# with a different implementation of RRDTool Java with a different implementation of RRDTool JavaScript (Node.js) with a different implementation of RRDTool Lua Perl PHP with a wrapper library Python Ruby | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | View functions in JavaScript | no | yes proprietary syntax | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding with a proxy-based framework, named couchdb-lounge | none | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication other methods possible by using 3rd party extensions | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | none | Multi-source replication Source-replica replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency | none | Eventual Consistency across shards Immediate Consistency within a shard | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | no | yes not for MyISAM storage engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | no | ACID at shard level | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes by using the rrdcached daemon | yes table locks or row locks depending on storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | no | no | Users with fine-grained authorization concept no user groups or roles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Citus | PouchDB | RRDtool | Vitess | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | Time Series DBMS are the database category with the fastest increase in popularity Time Series DBMS as a new trend? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Ubicloud wants to build an open source alternative to AWS Ubicloud reels in $16M for its open-source cloud platform Microsoft acquires Citus Data, re-affirming its commitment to Open Source and accelerating Azure PostgreSQL ... Microsoft Benchmarks Distributed PostgreSQL DBs Distributed PostgreSQL Benchmarks: Azure Cosmos DB, CockroachDB, and YugabyteDB provided by Google News | Building an Offline First App with PouchDB — SitePoint Getting Started with PouchDB Client-Side JavaScript Database — SitePoint 3 Reasons To Think Offline First Create Offline Web Apps Using Service Workers & PouchDB — SitePoint Offline-first web and mobile apps: Top frameworks and components provided by Google News | Cacti servers under attack by attackers exploiting CVE-2022-46169 Critical IP spoofing bug patched in Cacti How to install Cacti SNMP Monitor on Ubuntu Installation Guide for Collectd and Collectd-Web to Monitor Server Resources in Linux SNMP: The Little Protocol That Could provided by Google News | PlanetScale Unveils Distributed MySQL Database Service Based on Vitess PlanetScale grabs YouTube-developed open-source tech, promises Vitess DBaaS with on-the-fly schema changes Massively Scaling MySQL Using Vitess With Vitess 4.0, database vendor matures cloud-native platform PlanetScale Serves up Vitess-Powered Serverless MySQL provided by Google News |
Share this page