Agent skill · software engineering · aradotso
openduck-distributed-duckdb
OpenDuck — open-source distributed DuckDB with differential storage, hybrid dual execution, and transparent remote database attach
Why this skill is useful
Adds executable scripts for building and running a distributed DuckDB setup that are not commonly found in public documentation.
What it needs
Requires bison, rust, vcpkg installed locally. About 5k tokens when loaded. Last updated 2026-07-09. 70 stars on the source repository.
What this skill does
OpenDuck Distributed DuckDB Skill by ara.so — Daily 2026 Skills collection OpenDuck is an open-source implementation of distributed DuckDB featuring differential storage (append-only immutable layers via Postgres + object store), hybrid dual execution (single queries split across local and remote workers), and transparent remote database attach via ATTACH 'openduck:mydb'. It is architecturally inspired by MotherDuck but fully open protocol (gRPC + Arrow IPC). --- Architecture Overview Key concepts: OpenDuckCatalog / OpenDuckTableEntry — remote tables appear as first-class DuckDB catalog entries Hybrid execution — gateway labels operators LOCAL or REMOTE, inserts Bridge operators at boundaries Differential storage — immutable sealed layers, snapshot isolation, one write path, many readers Protocol — only 2 gRPC RPCs defined in proto/openduck/v1/execution.proto --- Repository Layout --- Installation & Build Prerequisites Rust toolchain (stable) C++ build tools, vcpkg, bison (macOS: brew install bison) DuckDB development headers (handled by the extension Makefile) 1. Build the Rust backend 2. Build the DuckDB C++ extension 3. Install the Python client (optional) --- Running the Server --- Connecting from Python Via openduck wrapper (recommended) Via raw DuckDB SDK Environment variables --- Connecting from the CLI --- Connecting from Rust --- Hybrid Execution Pattern Hybrid execution happens automatically — the gateway splits the logical plan: Write queries naturally — the extension handles routing: --- Differential Storage Differential storage is managed server-side. Key properties: Append-only sealed layers stored in object storage (S3-compatible) Postgres stores layer metadata and snapshot pointers Snapshot isolation — readers always see a consistent view One serialized write path — many concurrent readers From a client perspective it is fully transparent. DuckDB sees normal table semantics. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills aradotso/openduck-distributed-duckdb