DBMS > DuckDB vs. LevelDB vs. Microsoft Azure Cosmos DB vs. PostgreSQL vs. SwayDB
System Properties Comparison DuckDB vs. LevelDB vs. Microsoft Azure Cosmos DB vs. PostgreSQL vs. SwayDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | DuckDB Xexclude from comparison | LevelDB Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | PostgreSQL Xexclude from comparison | SwayDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An embeddable, in-process, column-oriented SQL OLAP RDBMS | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | Globally distributed, horizontally scalable, multi-model database service | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | An embeddable, non-blocking, type-safe key-value store for single or multiple disks and in-memory storage | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store | Document store Graph DBMS Key-value store Wide column store | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | Key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | duckdb.org | github.com/google/leveldb | azure.microsoft.com/services/cosmos-db | www.postgresql.org | swaydb.simer.au | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | duckdb.org/docs | github.com/google/leveldb/blob/main/doc/index.md | learn.microsoft.com/azure/cosmos-db | www.postgresql.org/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Microsoft | PostgreSQL Global Development Group www.postgresql.org/developer | Simer Plaha | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2018 | 2011 | 2014 | 1989 1989: Postgres, 1996: PostgreSQL | 2018 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 0.10, February 2024 | 1.23, February 2021 | 16.2, February 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source MIT License | Open Source BSD | commercial | Open Source BSD | Open Source GNU Affero GPL V3.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. | Aiven for PostgreSQL: Fully managed PostgreSQL for developers with 70+ extensions and flexible orchestration tools. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C++ | C | Scala | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | Illumos Linux OS X Windows | hosted | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | no | yes JSON types | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | yes specific XML-type available, but no XML query functionality. | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no | yes All properties auto-indexed by default | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | SQL-like query language | yes standard with numerous extensions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Arrow Database Connectivity (ADBC) CLI Client JDBC ODBC | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# 3rd party driver C++ Crystal 3rd party driver Go 3rd party driver Java Lisp 3rd party driver Python R Ruby 3rd party driver Rust Swift Zig 3rd party driver | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | Java Kotlin Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | JavaScript | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | JavaScript | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | none | Sharding Implicit feature of the cloud service | partitioning by range, list and (since PostgreSQL 11) by hash | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | none | yes Implicit feature of the cloud service | Source-replica replication other methods possible by using 3rd party extensions | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | no | Multi-item ACID transactions with snapshot isolation within a partition | ACID | Atomic execution of operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes, multi-version concurrency control (MVCC) | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes with automatic compression on writes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Access rights can be defined down to the item level | fine grained access rights according to SQL-standard | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | Instaclustr: Fully Hosted & Managed PostgreSQL » 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 pgDash: In-Depth PostgreSQL Monitoring. » 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 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 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 SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » more Redgate webinars: A series of key topics for new PostgreSQL users. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DuckDB | LevelDB | Microsoft Azure Cosmos DB former name was Azure DocumentDB | PostgreSQL | SwayDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Conferences, events and webinars | Monitoring PostgreSQL with Redgate Monitor | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | DuckDB and AWS — How to Aggregate 100 Million Rows in 1 Minute This Alternative to Pandas Processes Data 350 Times Faster Enabling Remote Query Execution through DuckDB Extensions DuckDB Walks to the Beat of Its Own Analytics Drum Seattle startup MotherDuck raises $52.5M at a $400M valuation to fuel DuckDB analytics platform provided by Google News | LevelDB in Ruby — SitePoint Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs Pliops unveils XDP-Rocks for RocksDB – Blocks and Files XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook Rust-Based Info Stealers Abuse GitHub Codespaces provided by Google News | Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates General availability: PgAudit in Azure Cosmos DB for PostgreSQL | Azure updates Azure Synapse Link for Cosmos DB: New Analytics Capabilities How to Migrate Azure Cosmos DB Databases | by Arwin Lashawn Azure Cosmos DB joins the AI toolchain provided by Google News | Automatically Generate Types for Your PostgreSQL Database Baffle Delivers Enterprise-Grade Data Security for PostgreSQL on Amazon RDS and Amazon Aurora Why PostgreSQL Is the Bedrock for the Future of Data Crunchy Data Introduces Postgres Query Engine for Data Lakes, Crunchy Bridge for Analytics Introducing OCI Database with PostgreSQL: Completing Our Cloud Database Suite for Every Need provided by Google News |
Share this page