OpenDuck brings MotherDuck’s cloud tricks to the open-source DuckDB world

Open-source developers just got a new toy. It has been reported that OpenDuck reimplements the architectural ideas popularized by MotherDuck — differential storage, hybrid (dual) execution, and an attach-based UX — and makes them available for anyone to run, extend, or swap under the hood. Want your DuckDB to treat remote tables like local ones? Attach, query, and watch the system decide what runs where. Neat, right?
What it does
OpenDuck persists data as immutable, append-only layers with PostgreSQL-style metadata so DuckDB still sees a normal file while object storage holds sealed layers and snapshots ensure consistent reads. A single SQL statement can be hybrid: part on your laptop, part on a remote worker. The gateway splits the plan, tags operators LOCAL or REMOTE, and inserts bridge operators so only intermediate results cross the wire. The extension plugs into DuckDB’s StorageExtension and Catalog interfaces, meaning remote tables behave as first-class citizens in JOINs, CTEs, and the optimizer.
Protocol and architecture
The protocol is intentionally small: two RPCs in execution.proto — one to execute and one to stream Arrow IPC batches back. Because it's gRPC + Arrow, any compatible service can be an OpenDuck backend. The reference stack ships a Rust gateway (auth, routing, plan splitting, backpressure) that talks to DuckDB workers; swap it out if you like. The client-side UX mirrors MotherDuck: LOAD the extension, ATTACH an openduck URI, and query remote tables as if they were local.
Why it matters
This is less about flashy benchmarks and more about portability and openness. By exposing a minimal protocol and a DuckDB-native catalog, OpenDuck could lower the bar for private, hybrid analytic systems — and let the community experiment with alternative backends or execution engines. Caveats? Of course: security, latency, and cost still matter — and performance claims should be tested in your environment. The code lives on GitHub if you want to poke under the hood: https://github.com/citguru/openduck.
Sources: github.com/citguru, Hacker News
Comments