DBMS > Apache Drill vs. DuckDB vs. PostgreSQL
System Properties Comparison Apache Drill vs. DuckDB vs. PostgreSQL
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | DuckDB Xexclude from comparison | PostgreSQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | An embeddable, in-process, column-oriented SQL OLAP RDBMS | Widely used open source RDBMS Developed as objectoriented DBMS (Postgres), gradually enhanced with 'standards' like SQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Relational DBMS | Relational DBMS with object oriented extensions, e.g.: user defined types/functions and inheritance. Handling of key/value pairs with hstore module. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Graph DBMS with Apache Age Spatial DBMS Vector DBMS with pgvector extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | duckdb.org | www.postgresql.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | duckdb.org/docs | www.postgresql.org/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | PostgreSQL Global Development Group www.postgresql.org/developer | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2018 | 1989 1989: Postgres, 1996: PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 1.0.0, June 2024 | 16.4, August 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source MIT License | Open Source BSD | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | PostgreSQL Flex @ STACKIT offers managed PostgreSQL Instances with adjustable CPU, RAM, storage amount and speed and several extensions available, in enterprise grade to perfectly match all application requirements. All 100% GDPR-compliant. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | server-less | FreeBSD HP-UX Linux NetBSD OpenBSD OS X Solaris Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | 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 | no | yes specific XML-type available, but no XML query functionality. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | yes | yes standard with numerous extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | Arrow Database Connectivity (ADBC) CLI Client JDBC ODBC | ADO.NET JDBC native C library ODBC streaming API for large objects | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | 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 | .Net C C++ Delphi Java JDBC JavaScript (Node.js) Perl PHP Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | no | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | partitioning by range, list and (since PostgreSQL 11) by hash | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Source-replica replication other methods possible by using 3rd party extensions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, multi-version concurrency control (MVCC) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Depending on the underlying data source | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | no | fine grained access rights according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Navicat Monitor is a safe, simple and agentless remote server monitoring tool for PostgreSQL and many other database management systems. » more Navicat for PostgreSQL is an easy-to-use graphical tool for PostgreSQL database development. » more pgDash: In-Depth PostgreSQL Monitoring. » more Instaclustr: Fully Hosted & Managed PostgreSQL » more SharePlex is the reliable and affordable data replication solution for PostgreSQL migrations, high availability and more. » 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | DuckDB | PostgreSQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 PASS Data Community Summit Apache Drill case study: A tutorial on processing CSV files Analyse Kafka messages with SQL queries using Apache Drill Apache Drill Poised to Crack Tough Data Challenges MapR Advances Support for Flexible and High Performance Analytics on JSON and S3 Data with Apache Drill Apache Drill Eliminates ETL, Data Transformation for MapR Database provided by Google News PostgreSQL in line for DuckDB-shaped boost in analytics arena My First Billion (of Rows) in DuckDB DuckDB: The tiny but powerful analytics database Unleashing Postgres for Analytics With DuckDB Integration Enabling Remote Query Execution through DuckDB Extensions provided by Google News Intel Demonstrates Up To 48% Improvement For AVX-512 Optimized PostgreSQL Using PostgreSQL as a vector database in RAG ServiceNow moves its backend off MariaDB to homebrew Postgres PostgreSQL databases under attack PostgreSQL tutorial: Get started with PostgreSQL 16 provided by Google News |
Share this page