DuckDB is an in-process analytical database management system designed for online analytical processing. Unlike a conventional client-server database, DuckDB executes queries within the application process.
The database is particularly useful for querying local datasets, analysing files and performing complex aggregations without operating a separate database service.
DuckDB uses a column-oriented, vectorised query execution engine optimised for analytical workloads. It integrates with data science environments and can query external datasets without first importing them into a conventional database.
This is free and open source software.
Key Features
- Supports SQL joins, aggregations, window functions and complex subqueries.
- Provides vectorised query execution and parallel processing.
- Reads Parquet, CSV and JSON files directly through SQL queries.
- Supports nested data types, including lists, structures and maps.
- Includes ACID transactions with multi-version concurrency control.
- Supports persistent single-file databases and in-memory operation.
- Provides efficient integration with Python DataFrames, Pandas, Polars and R.
- Supports extensions for additional data formats, functionality and external services.
- Offers SQL querying of remote data through HTTP and object storage extensions.
- Provides an interactive command-line interface.
- Supports exporting query results to multiple data formats.
- Cross-platform support – runs on Linux, macOS, and Windows.
Website: github.com/duckdb/duckdb
Support:
Developer: DuckDB Foundation
License: MIT License
DuckDB is written in C++ and C. Learn C++ with our recommended free books and free tutorials. Learn C with our recommended free books and free tutorials.
Related Software
| Column-Oriented Databases | |
|---|---|
| MariaDB ColumnStore | Uses a massively parallel distributed data architecture |
| DuckDB | In-process SQL OLAP database management system |
| Druid | High performance, real-time analytics database |
| Databend | Cloud data warehouse |
| ClickHouse | Real-time analytics database management system |
| InfluxDB Core | Scalable datastore for metrics, events, and real-time analytics |
| Doris | Modern data warehouse for real-time analytics |
| VictoriaMetrics | Scalable solution for monitoring and managing time series data |
| StarRocks | High-performance analytical database |
| MonetDB | High performance relational database system for analytics |
| Kudu | Distributed data storage engine |
| QuestDB | High-performance time-series database |
| Pinot | Real-time analytics platform |
| IoTDB | High-performance time-series database |
| GreptimeDB | Cloud-native database |
| CrateDB | Distributed SQL database management |
| Hyrise | Flexible platform for research into relational data management |
Read our verdict in the software roundup.
| Relational Databases | |
|---|---|
| MariaDB | High compatibility with MySQL, ensuring drop-in replacement capability |
| PostgreSQL | Award winning Object-relational database management system |
| MySQL | Multithreaded, multi-user SQL database management system |
| SQLite | Embeddable SQL Database Engine |
| TiDB | Cloud-native, distributed SQL database |
| DuckDB | In-process SQL OLAP database management system |
| Turso | In-process relational database engine |
| YugabyteDB | PostgreSQL-compatible distributed SQL database |
| rqlite | Distributed database built on SQLite |
| MonetDB | High performance relational database system for analytics |
| Dolt | Version-controlled SQL database |
| Firebird | Relational database offering many ANSI SQL features |
| H2 | Relational database management system written in Java |
| HSQLDB | JDBC interface, client-server version, query tool, grid and more |
| CUBRID | Database engine with built-in enterprise grade features |
| Apache Cloudberry | Massively parallel processing database |
| Virtuoso | Data Management with Web Application Server and Web Services |
| Apache Derby | Full-featured relational database implemented entirely in Java |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.