OpenDuck is an open-source, self-hosted reimplementation of MotherDuck's architectural ideas for DuckDB in the cloud. It provides differential storage (append-only immutable layers with PostgreSQL metadata and object storage), hybrid/dual execution (splitting query plans between local and remote workers), and a DuckDB-native catalog via StorageExtension. The protocol is intentionally minimal — two gRPC RPCs returning Arrow IPC batches — making it backend-agnostic. The gateway is written in Rust, a DuckDB C++ extension handles catalog integration, and a Python client is included. Compared to MotherDuck (commercial, proprietary), OpenDuck is fully open-source and self-hostable under MIT license.

5m read timeFrom github.com
Post cover image
Table of contents
What OpenDuck doesArchitectureQuick startLayoutOpenDuck vs MotherDuckOpenDuck vs Arrow Flight SQLAcknowledgmentsLicense

Sort: