DBMS > KeyDB vs. MySQL vs. PostgreSQL vs. QuestDB vs. ScyllaDB
System Properties Comparison KeyDB vs. MySQL vs. PostgreSQL vs. QuestDB vs. ScyllaDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | KeyDB Xexclude from comparison | MySQL Xexclude from comparison | PostgreSQL Xexclude from comparison | QuestDB Xexclude from comparison | ScyllaDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | Widely used open source RDBMS | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | A high performance open source SQL database for time series data | Cassandra and DynamoDB compatible wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Relational DBMS Key/Value like access via memcached API | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | Time Series DBMS | Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | Relational DBMS | Key-value store | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Snapchat/KeyDB keydb.dev | www.mysql.com | www.postgresql.org | questdb.io | www.scylladb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.keydb.dev | dev.mysql.com/doc | www.postgresql.org/docs | questdb.io/docs | docs.scylladb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | EQ Alpha Technology Ltd. | Oracle since 2010, originally MySQL AB, then Sun | PostgreSQL Global Development Group www.postgresql.org/developer | QuestDB Technology Inc | ScyllaDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2019 | 1995 | 1989 1989: Postgres, 1996: PostgreSQL | 2014 | 2015 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.4.0, April 2024 | 16.3, May 2024 | ScyllaDB Open Source 5.4.1, January 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD-3 | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source BSD | Open Source Apache 2.0 | Open Source Open Source (AGPL), commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. |
| Scylla Cloud: Create real-time applications that run at global scale with Scylla Cloud, the industry’s most powerful NoSQL DBaaS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C and C++ | C | Java (Zero-GC), C++, Rust | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | FreeBSD Linux OS X Solaris Windows | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | Linux macOS Windows | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | yes schema-free via InfluxDB Line Protocol | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes | yes | yes | 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. | no | yes | yes specific XML-type available, but no XML query functionality. | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes by using the Redis Search module | yes | yes | no | yes cluster global secondary indices | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes with proprietary extensions | yes standard with numerous extensions | SQL with time-series extensions | SQL-like DML and DDL statements (CQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol RESP - REdis Serialization Protoco | ADO.NET JDBC ODBC Proprietary native API | ADO.NET JDBC native C library ODBC streaming API for large objects | HTTP REST InfluxDB Line Protocol (TCP/UDP) JDBC PostgreSQL wire protocol | Proprietary protocol (CQL) compatible with CQL (Cassandra Query Language, an SQL-like language) RESTful HTTP API (DynamoDB compatible) Thrift | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | C PostgreSQL driver C++ Go Java JavaScript (Node.js) Python Rust over HTTP | For CQL interface: C#, C++, Clojure, Erlang, Go, Haskell, Java, JavaScript, Node.js, Perl, PHP, Python, Ruby, Rust, Scala For DynamoDB interface: .Net, ColdFusion, Erlang, Groovy, Java, JavaScript, Perl, PHP, Python, Ruby | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Lua | yes proprietary syntax | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | no | yes, Lua | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | partitioning by range, list and (since PostgreSQL 11) by hash | horizontal partitioning (by timestamps) | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication Source-replica replication | Source-replica replication other methods possible by using 3rd party extensions | Source-replica replication with eventual consistency | selectable replication factor Representation of geographical distribution of servers is possible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Strong eventual consistency with CRDTs | Immediate Consistency | Immediate Consistency | Immediate Consistency | Eventual Consistency Tunable Consistency can be individually decided for each write operation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes not for MyISAM storage engine | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Optimistic locking, atomic execution of commands blocks and scripts | ACID not for MyISAM storage engine | ACID | ACID for single-table writes | no Atomicity and isolation are supported for single operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes table locks or row locks depending on storage engine | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | yes through memory mapped files | yes in-memory tables | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | simple password-based access control and ACL | Users with fine-grained authorization concept no user groups or roles | fine grained access rights according to SQL-standard | Access rights for users can be defined per object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KeyDB | MySQL | PostgreSQL | QuestDB | ScyllaDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Relational model with native time series support Column-based storage and time partitioned... » more | ScyllaDB is engineered to deliver predictable performance at scale. It’s adopted... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | High ingestion throughput: peak of 4M rows/sec (TSBS Benchmark) Code optimizations... » more | Highly-performant (efficiently utilizes full resources of a node and network; millions... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Financial tick data Industrial IoT Application Metrics Monitoring » more | ScyllaDB is ideal for applications that require high throughput and low latency at... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Banks & Hedge funds, Yahoo, OKX, Airbus, Aquis Exchange, Net App, Cloudera, Airtel,... » more | Discord, Epic Games, Expedia, Zillow, Comcast, Disney+ Hotstar, Samsung, ShareChat,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | ScyllaDB typically offers ~75% total cost of ownership savings, with ~5X higher throughput... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Open source Apache 2.0 QuestDB Enterprise QuestDB Cloud » more | ScyllaDB Open Source - free open source software (AGPL) ScyllaDB Enterprise - subscription-based... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | QuestDB 8.0: Major Release QuestDB and Raspberry Pi 5 benchmark, a pocket-sized powerhouse Build your own resource monitor with QuestDB and Grafana Does "vpmovzxbd" Scare You? Here's Why it Doesn't Have To Create an ADS-B flight radar with QuestDB and a Raspberry Pi | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup.
» more CData: Connect to Big Data & NoSQL through standard Drivers. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more | Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. » more CYBERTEC is your professional partner in PostgreSQL topics for over 20 years. As our main aim is to be your single-source all-in-one IT service provider, we offer a wide range of products and services. Visit our website for more details. » more pgDash: In-Depth PostgreSQL Monitoring. » more Redgate webinars: A series of key topics for new PostgreSQL users. » more Fujitsu Enterprise Postgres: An Enterprise Grade PostgreSQL with the flexibility of a hybrid cloud solution combined with industry leading security, availability and performance. » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more Instaclustr: Fully Hosted & Managed PostgreSQL » more Timescale: Calling all PostgreSQL users – the 2023 State of PostgreSQL survey is now open! Share your favorite extensions, preferred frameworks, community experiences, and more. Take the survey today! » more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KeyDB | MySQL | PostgreSQL | QuestDB | ScyllaDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | PostgreSQL is the DBMS of the Year 2023 Snowflake is the DBMS of the Year 2022, defending the title from last year Snowflake is the DBMS of the Year 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Oh, snap! Snap snaps up database developer KeyDB Snap Acquires KeyDB for Open-Source Services Garnet–open-source faster cache-store speeds up applications, services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? provided by Google News | Choosing the Best MySQL Reporting Tool for Your Team Authentication Bypass Vulnerability in MySQL Outage for MySQL.com Web Sites Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade ... Enterprise Manager: How Comcast enhanced monitoring for MySQL InnoDB Clusters provided by Google News | What Microsoft's Open Source PostgreSQL Acquisition Portends for SQL Server How to implement a better like, views, comment counters in PostgreSQL? Automatically Generate Types for Your PostgreSQL Database Enterprise DB begins rolling AI features into PostgreSQL Introducing OCI Database with PostgreSQL: Completing Our Cloud Database Suite for Every Need provided by Google News | QuestDB snares $12M Series A with hosted version coming soon SQL Extensions for Time-Series Data in QuestDB QuestDB gets $12M Series A funding amid growing interest in time-series databases Comparing Different Time-Series Databases MindsDB Platform Now Features Over 70 Integrations provided by Google News | ScyllaDB Raises $43M to Take on MongoDB at Scale, Push Database Performance to New Levels Sleeping at Scale - Delivering 10k Timers per Second per Node with Rust, Tokio, Kafka, and Scylla Running ScyllaDB NoSQL on Kubernetes with Spot Instances ScyllaDB on AWS is a NoSQL Database Built for Gigabyte-to-Petabyte Scale | Amazon Web Services ScyllaDB Database Review | eWeek provided by Google News |
Share this page