DBMS > Citus vs. EJDB vs. Fauna vs. RethinkDB vs. VictoriaMetrics
System Properties Comparison Citus vs. EJDB vs. Fauna vs. RethinkDB vs. VictoriaMetrics
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Citus Xexclude from comparison | EJDB Xexclude from comparison | Fauna previously named FaunaDB Xexclude from comparison | RethinkDB Xexclude from comparison | VictoriaMetrics Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Scalable hybrid operational and analytics RDBMS for big data use cases based on PostgreSQL | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | Fauna provides a web-native interface, with support for GraphQL and custom business logic that integrates seamlessly with the rest of the serverless ecosystem. The underlying globally distributed storage and compute platform is fast, consistent, and reliable, with a modern security infrastructure. | DBMS for the Web with a mechanism to push updated query results to applications in realtime. | A fast, cost-effective and scalable Time Series DBMS and monitoring solution | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Document store Graph DBMS Relational DBMS Time Series DBMS | Document store | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.citusdata.com | github.com/Softmotions/ejdb | fauna.com | rethinkdb.com | victoriametrics.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.citusdata.com | github.com/Softmotions/ejdb/blob/master/README.md | docs.fauna.com | rethinkdb.com/docs | docs.victoriametrics.com github.com/VictoriaMetrics/VictoriaMetrics/wiki | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | Fauna, Inc. | The Linux Foundation since July 2017 | VictoriaMetrics | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2012 | 2014 | 2009 | 2018 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.1, December 2018 | 2.4.1, August 2020 | v1.91, May 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source AGPL, commercial license also available | Open Source GPLv2 | commercial | Open Source Apache Version 2 | Open Source Apache Version 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | C | Scala | C++ | Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | server-less | hosted | Linux OS X Windows | FreeBSD Linux macOS OpenBSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free | schema-free | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes string, integer, double, bool, date, object_id | no | yes string, binary, float, bool, date, geometry | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes standard, with numerous extensions | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC native C library ODBC streaming API for large objects | in-process shared library | RESTful HTTP API | Graphite protocol InfluxDB Line Protocol OpenTSDB Prometheus Query API Prometheus Remote Read/Write | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Delphi Java JavaScript (Node.js) Perl PHP Python Tcl | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | C# Go Java JavaScript Python Ruby Scala Swift | C community-supported driver C# community-supported driver C++ community-supported driver Clojure community-supported driver Dart community-supported driver Erlang community-supported driver Go community-supported driver Haskell community-supported driver Java official driver JavaScript (Node.js) official driver Lisp community-supported driver Lua community-supported driver Objective-C community-supported driver Perl community-supported driver PHP community-supported driver Python official driver Ruby official driver Scala community-supported driver | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | no | user defined functions | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | no | no | Client-side triggers through changefeeds | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | horizontal partitioning consistent hashing | Sharding range based | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication other methods possible by using 3rd party extensions | none | Multi-source replication | Source-replica replication | Synchronous replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Eventual Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no typically not needed, however similar functionality with collection joins possible | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | ACID | Atomic single-document operations | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes Read/Write Locking | yes | yes MVCC based | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | no | Identity management, authentication, and access control | yes users and table-level permissions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | EJDB | Fauna previously named FaunaDB | RethinkDB | VictoriaMetrics | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Meet some database management systems you are likely to hear more about in the future | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Ubicloud wants to build an open source alternative to AWS How Citus Health Uses AWS to Provide Secure and Real-Time Virtual Patient Care - AWS Startups Ubicloud reels in $16M for its open-source cloud platform Microsoft Benchmarks Distributed PostgreSQL DBs Microsoft acquires Citus Data, re-affirming its commitment to Open Source and accelerating Azure PostgreSQL ... provided by Google News | Slicing the Gordian Knot: A leap to real-time systems of truth Fauna Launches Distributed Document-Relational Database On Google Cloud Marketplace Fauna Adds Transformative Schema-as-Code Capabilities to Enterprise Proven, Document-Relational Database Utah Natural Heritage Program Fauna Query Language tamed to appeal to developers provided by Google News | MongoDB: The Popular Database for IoT How to Use RethinkDB with Node.js Applications — SitePoint Stripe acquires team behind NoSQL database startup RethinkDB How to deploy RethinkDB using Docker RethinkDB is dead, and MongoDB isn't what killed it provided by Google News | Green coding - VictoriaMetrics: The efficiency vs complexity trade-off KubeCon24: VictoriaMetrics' Simpler Alternative to Prometheus OpenTelemetry Is Too Complicated, VictoriaMetrics Says How VictoriaMetrics' open source approach led to mass industry adoption VictoriaMetrics takes organic growth over investor pressure provided by Google News |
Share this page