Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Coursera

DuckDB From Zero

Pragmatic AI Labs via Coursera

Overview

AI, Data Science & Cloud Certificates from Google, IBM & Meta — 50% Off
One plan covers every Professional Certificate on Coursera. 50% off Coursera Plus Annual for 10 days only — price increases June 17.
Unlock All Certificates
e.g. This is primarily aimed at first- and second-year undergraduates interested in engineering or science, along with high school students and professionals with an interest in programming.DuckDB From Zero teaches you how to embed DuckDB directly into your Rust applications, treating an analytical SQL engine as a library rather than a server. Across four hands-on modules, you'll move from compiling DuckDB into a single binary to writing SQL queries over local CSV, Parquet, and JSON files, streaming Arrow record batches into Polars, and shipping a polished command-line tool with cargo dist. By the end you will understand when in-memory connections beat on-disk databases, how projection and predicate pushdown make Parquet queries fast on a laptop, how to hand results to Polars zero-copy through the Arrow C Data Interface, and how to package a Rust CLI that bundles DuckDB so users can install nothing and still run analytical queries against gigabytes of data. The course is built around short videos, key-term readings, scenario-driven reflections, and an end-to-end demo project. You will leave with a working understanding of DuckDB-in-Rust patterns, the skills to design an analytical CLI you would actually want to use, and a clear mental model of where DuckDB fits between SQLite, Spark, and the Polars/Arrow ecosystem.

Syllabus

  • Embedded Analytics in One Binary
    • DuckDB as a library, not a server. How to compile it into a Rust binary, and when to use in-memory connections versus on-disk database files.
  • SQL Queries Over Local Files
    • Querying CSV, Parquet, and JSON files directly with DuckDB. How the read_csv_auto and read_parquet table functions work, why projection and predicate pushdown matter, and how to handle nested JSON.
  • Arrow Result Sets & Polars Interop
    • Moving DuckDB results into the broader data ecosystem via Apache Arrow. How to fetch Arrow record batches from DuckDB, hand them to Polars, and choose between DuckDB and Polars for each stage of a pipeline.
  • Shipping DuckDB
    • Packaging DuckDB-powered Rust code as a portable single-file CLI. How to design CLI ergonomics with clap, ship binaries with cargo dist, and wire main.rs to a lib.rs core that holds the DuckDB logic.

Taught by

Noah Gift

Reviews

Start your review of DuckDB From Zero

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.