Bruin Academy

Guide

Build a local DuckLake lakehouse

Build a local DuckLake lakehouse with Bruin, DuckDB, Postgres, and MinIO - then run a pipeline that seeds, ingests, and aggregates data.

What

Build a local DuckLake lakehouse with DuckDB as the query engine, Postgres as the DuckLake catalog, and MinIO as S3-compatible storage. The finished Bruin pipeline seeds a CSV into DuckDB, ingests it into DuckLake, then creates an aggregate table in the lakehouse.

DuckLake support is currently in beta. See the DuckLake configuration reference for supported catalog and storage combinations.

How

First, run Postgres and MinIO with Docker. Then configure a local DuckDB connection for the source data and a DuckLake connection that points to Postgres and MinIO. Finally, use a seed asset, an Ingestr asset, and a DuckDB SQL asset to build the pipeline:

CSV -> DuckDB -> DuckLake -> DuckLake aggregate
       source     Postgres + MinIO

Before you start

Get help & contribute

Sign up to our newsletter

Practical updates on open-source data pipelines, AI analysts, governance, and what we are shipping at Bruin.