A curated list of awesome DuckDB libraries, tools and resources.
DuckDB is an in-process SQL OLAP database management system.
- Resources
- Client APIs
- Tools Powered by DuckDB
- Libraries Powered by DuckDB
- SQL Clients and IDE that Support DuckDB
- Projects Powered by DuckDB
- Integrations
- Extensions
- Media
- Contribute
- Official Documentation - Official DuckDB documentation.
- Official Blog - Official DuckDB blog.
- DuckDB Clients - Client APIs for DuckDB.
- DuckDB Documentation PDF - The DuckDB documentation as a single PDF file.
- docker-duckdb - Docker image for DuckDB CLI.
- DuckDB setup - GitHub Action to install DuckDB in CI.
- Online DuckDB Shell - Online DuckDB shell powered by WebAssembly.
- Serverless DuckDB over S3 - Running DuckDB over a data lake on S3 using lambda.
- DuckDB snippets - Collection of snippets curated by MotherDuck.
- DuckDB tldr page - DuckDB's entry in tldr pages, available in CLI via the
tldr duckdb
command. - DuckDB AWS Lambda layer - Run DuckDB in AWS Lambda functions.
- Compatible DuckDB Extensions for AWS Lambda - Extensions specifically compiled for the AWS Lambda runtime (GLIBC 2.26).
- Serverless DuckDB as API - Use DuckDB as API with Amazon API Gateway and AWS Lambda.
- Serverless Parquet Repartitioner - Use DuckDB to repartition data in S3-based Data Lakes.
- Observable notebooks - Notebooks using DuckDB on the Observable data visualization platform.
- Rill Developer - Tool for effortlessly transforming data sets into powerful, opinionated dashboards using SQL.
- Ibis Project - The flexibility of Python analytics with the scale and performance of modern SQL.
- MotherDuck - Supercharge DuckDB experience with the cloud.
- Boiling Data - Serverless data analytics overlay on top of S3 Data Lakes.
- Hex Dataframe SQL - Hex's Dataframe SQL cells are powered by DuckDB.
- Mode - Mode uses DuckDB for their in-memory data engine.
- VulcanSQL - DuckDB can be used as a caching layer or a data connector in VulcanSQL, a Data API framework for data folks to create REST APIs by writing SQL templates.
- Tad - A fast, free, cross-platform tabular data viewer application powered by DuckDB.
- Honeycomb Maps - A browser-based geospatial analysis tool leveraging DuckDB Wasm.
- Bauplan - A serverless data transformation platform for data lakes.
- Excalichart.com - A fast, free dashboard for exploring your data.
- Malloy - Malloy is an experimental language for describing data relationships and transformations. Malloy connects to BigQuery and Postgres, and natively supports DuckDB.
- Evidence - Generate reports using SQL and markdown. The DuckDB connector allows querying across DuckDB, csv, parquet and json.
- SQL Playground - DuckDB-WASM based SQL playground for running queries on local or remote data, being able to show data as tables or visually as graphs.
- Latitude - Latitude uses DuckDB to power data snapshots. Drop a CSV file and query it with SQL at the speed of light.
- Mosaic - An extensible framework for linking databases and interactive views.
- Fugue - A unified interface for distributed computing. Fugue executes SQL, Python, Pandas, and Polars code on Spark, Dask and Ray without any rewrites.
- Splink - A free Python library for fast, accurate data deduplication and record linkage.
- Simple-data-analysis - Easy-to-use and high-performance JavaScript library for data analysis.
- Harlequin - The DuckDB IDE for your terminal. (GitHub).
- qStudio - A free SQL tool specialized for data analysts. It runs on every operating system and allows easy browsing of tables and charting of results.
- DuckDB SQL Tools - Free DuckDB SQL Tools for VS Code IDE. Premium version available with advanced features.
- DBeaver - DBeaver is a universal database access and development tool that can be used to connect almost any type of database.
- NBA Monte Carlo - Monte Carlo simulation of the NBA season, leveraging Meltano, dbt, DuckDB and Evidence.
- Datadex - Open source and local friendly data platform to collaborate on Open Data using DuckDB, Dagster, dbt, and Quarto.
- dbt-duckdb - DuckDB dbt adapter.
- data load tool - DuckDB destination - Extract and load data from APIs to DuckDB using dlt.
- target-duckdb - Load data to DuckDB based on Singer spec.
- Airbyte DuckDB destination - Load data to DuckDB with Airbyte.
- Kestra DuckDB plugin — Run queries with DuckDB to schedule data transformations and process automations, and run event-driven anomaly detection pipelines.
- Arrow Flight SQL Server - An example implementation of the Arrow Flight SQL protocol what runs in a client-server setup with DuckDB or SQLite as backends.
- SQLFlow: Enables SQL-based stream-processing, powered by DuckDB.
- Official Extensions - Official DuckDB extensions.
arrow
- A zero-copy data integration between Apache Arrow and DuckDB.duckdb_iceberg
- DuckDB extension for reading Iceberg tables.duckdb_aws
- DuckDB extension for handling AWS credentials.duckdb_azure
- DuckDB extension for using the Azure Blob storage.postgres_scanner
- Allows DuckDB to directly read data from a running Postgres instance.spatial
- Enables geospatial processing.sqlite_scanner
- To read and write to SQLite databases.
- DuckDB Extension Radar - Repository that contains DuckDB extensions on GitHub. Refreshed daily.
- Deltatable - DuckDB extension for reading Delta tables.
- Lance - Integrate Lance (modern columnar data format for ML implemented in Rust) with DuckDB.
- PRQL - Run PRQL commands directly within DuckDB.
- duckdb-engine - SQLAlchemy driver for DuckDB.
- Scrooge-McDuck - DuckDB extension to support a set of aggregation functions and data scanners on financial data.
- duckdb-pytables - DuckDB extension to allow running SQL on arbitrary data sources.
- ODBC Scanner DuckDB Extension - DuckDB extension to read data directly from databases supporting the ODBC interface.
- duckdb-jfr-extension - DuckDB extension to read JFR (Java Flight Recorder) files directly.
- QDuckDB - Plugin for reading DuckDB spatial tables in QGIS software.
- In-Process Analytical Data Management with DuckDB @ PyData Amsterdam - Hannes MĂĽhleisen.
- DuckDB: The Power of a Data Warehouse in your Python Process @ PyData Yerevan - Gábor Szárnyas.
- DuckDB: Bringing analytical SQL directly to your Python shell @ EuroPython - Pedro Holanda.
- DuckDB keynote @ Data + AI Summit 2023 - Hannes MĂĽhleisen.
- DuckCon #3 playlist
- DuckDB: Bringing Analytical SQL Directly To Your Python Shell @ FOSDEM - Pedro Holanda.
- State Of The Duck @ DuckCon - Hannes MĂĽhleisen & Mark Raasveldt.
- DuckDB Extensions @ DuckCon - Pedro Holanda & Sam Ansmink.
- Developing Systems in Academia: The Good, the Bad, and the not-so-Ugly Duckling @ CIDR - Hannes MĂĽhleisen.
- DuckDB An Embeddable Analytical Database @ FOSDEM - Hannes MĂĽhleisen.
- DuckDB tutorials playlist by Learn Data with Mark - Mark Needham.
- DuckDB tutorials playlist by MotherDuck - Mehdi Ouazza (MotherDuck).
- Software Engineering Daily: DuckDB - Hannes MĂĽhleisen.
- Move Your Database To The Data And Speed Up Your Analytics With DuckDB - Hannes MĂĽhleisen.
- The Personal Data Warehouse - Jordan Tigani.
- Modern Data Stack in a Box - Fast, free, and open-source Modern Data Stack deployed on a laptop using the combination of DuckDB, Meltano, dbt, and Apache Superset.
- How to use DuckDB, Motherduck and Kestra for ETL - how DuckDB can transform data, mask sensitive PII information, detect anomalies in event-driven workflows, and streamline reporting use cases.
- DuckDB vs. MotherDuck — how do they compare - what are key differences between them, and when to choose each of these options.
Contributions welcome! Read the contribution guidelines first.