Open source · Powered by DuckDB

    The enterprise-grade DuckDB server

    DuckDB can now run as a server — but a production server needs auth, multi-tenancy, observability, and scale. GizmoSQL is the enterprise-grade layer in front of DuckDB — secure, instrumented, multi-tenant, and horizontally scalable, over Apache Arrow Flight SQL.

    DuckDB can be a server. GizmoSQL makes it enterprise-grade.

    Everything a production server needs above the wire — auth, governance, multi-tenancy, and scale.

    Mature client tooling, day one

    DuckDB can now run as a server — via its own Quack protocol or GizmoSQL’s Apache Arrow Flight SQL. GizmoSQL speaks Flight SQL, ADBC & JDBC, so your existing BI, ETL, and notebook tools connect immediately.

    Enterprise security & governance

    A wire protocol gets you connectivity; production needs the layer above it. GizmoSQL adds TLS/mTLS, JWT, SSO/OAuth/LDAP, per-catalog permissions, audit logging, and automatic query profiling.

    Horizontally scalable

    Run a cluster of GizmoSQL nodes behind Kubernetes with round-robin load-balancing over a shared DuckLake. Add nodes to add concurrency.

    On DuckDB’s Quack protocol

    We helped blaze this trail — and we welcome Quack

    In 2026, DuckDB Labs introduced Quack, a native client-server protocol for DuckDB. We’re fans — and in their launch post, the DuckDB team kindly credited us:

    “We also want to thank Philip Moore from GizmoSQL / GizmoData, who has blazed this trail for us already and shown that client-server DuckDB is a very worthwhile thing.”— DuckDB Labs, announcing Quack

    Quack is a fast, native client-server protocol, purpose-built for tight DuckDB-to-DuckDB integration. As with most wire protocols, the production layer — TLS, multi-tenancy, external auth — lives above it. That layer is exactly where GizmoSQL has always focused: today over Apache Arrow Flight SQL (with mature client tooling in nearly every language), plus observability, instrumentation, fine-grained security, and multi-tenancy. We already provide Quack drivers, and a future GizmoSQL may speak Quack natively in addition to Flight SQL — so a single deployment can serve every client.

    Built for Enterprise

    A governed gateway to your data — scoped access, strong identity, and full auditability, so every team gets exactly the data they need and nothing they shouldn't.

    Strong Identity

    Authenticate every connection with SSO / OAuth, mutual TLS, or JWT — backed by any OIDC provider like Google or Okta. No shared logins, no client-side secrets.

    Fine-Grained Authorization

    Per-catalog, per-user permissions and true multi-tenancy with per-tenant resource limits. Give each team exactly the access they need — read, write, or none — on only the catalogs they should see.

    Control & Auditability

    Session instrumentation records who ran what, and when, while automatic query profiling captures the timing and plan of every statement. Keep deployments healthy with KILL SESSION, statement queuing, and query timeouts — the operational controls production demands.

    Works with the tools you already run

    GizmoSQL speaks Arrow Flight SQL, JDBC, and ADBC — so your existing BI, ETL, notebook, and orchestration tools connect on day one, with mature client libraries in nearly every language.

    One server, two backends

    Run the same secure server interface over DuckDB or SQLite — for terabyte-scale analytics, embedded and edge deployments, or anywhere SQLite's footprint and ubiquity matter.

    See the Enterprise controls on your own workload — free for 30 days.

    Horizontal scaling

    Scale out across a cluster of nodes

    Run a pool of GizmoSQL servers behind Kubernetes and spread user sessions across them round-robin. Add nodes to add concurrency — in both Core and Enterprise.

    Analysts
    BI tools
    AI agents
    Apps
    Kubernetes Service
    round-robin session load balancing

    GizmoSQL node 1

    own sessions

    GizmoSQL node 2

    own sessions

    GizmoSQL node 3

    own sessions

    GizmoSQL node 4

    own sessions

    DuckLake — shared lakehouse storage
    one open copy of your data as Parquet on S3 / GCS / Azure — every node reads & writes it
    PostgreSQL
    manages the DuckLake catalog metadata

    Each node runs queries independently — a single query never spans nodes — while every node shares one DuckLake, with PostgreSQL keeping the catalog consistent. Scale concurrency by adding nodes.

    User sessions are distributed round-robin across every node in the pool.

    Each query runs entirely on one node — no cross-node coordination to slow it down.

    Kubernetes-native: add or remove capacity by changing a replica count.

    Same behavior in Core (Apache-2.0) and Enterprise Edition — no special tier required.

    One shared DuckLake — a single open copy of your data, not a silo per node.

    A PostgreSQL catalog keeps table metadata consistent across every node.

    Want this running in production without standing it up yourself?

    DuckDB server — FAQ

    Can DuckDB be used as a server?

    Historically, DuckDB ran in-process (embedded) inside a single application. Today it can run as a server two ways: DuckDB Labs’ own native Quack protocol, or GizmoSQL over Apache Arrow Flight SQL. GizmoSQL adds the enterprise layer — authentication, governance, multi-tenancy, observability, and horizontal scaling — and connects to the BI, ETL, and notebook tools that already speak Flight SQL, JDBC, and ADBC.

    Isn’t DuckDB a server now, with the Quack protocol?

    Yes — DuckDB Labs’ native Quack protocol makes DuckDB a client-server database, and they generously credited GizmoSQL with blazing that trail. Quack is great for tight DuckDB-to-DuckDB integration. GizmoSQL focuses on the enterprise layer above the wire: Apache Arrow Flight SQL with mature client tooling today, plus authentication, fine-grained permissions, multi-tenancy, audit logging, observability, and automatic query profiling. We provide Quack drivers, and a future GizmoSQL may speak Quack natively too.

    Is DuckDB production-ready for concurrent users?

    Core DuckDB runs in-process; a server protocol adds concurrent client sessions. With GizmoSQL you also get the production layer — auth, governance, and observability — and you scale concurrency horizontally by running a cluster of GizmoSQL nodes behind Kubernetes with round-robin session load-balancing. It is no longer single-node.

    How do I run DuckDB as a server?

    Install GizmoSQL and start gizmosql_server pointing at your DuckDB database file (or a shared DuckLake). Clients connect via ADBC (adbc-driver-gizmosql), JDBC, or the Python library. The install guide walks through every platform.

    Is the GizmoSQL DuckDB server open source?

    Yes — GizmoSQL Core is Apache-2.0 and free. Enterprise adds SSO/OAuth, fine-grained permissions, session instrumentation, automatic query profiling, and statement queuing for $300 per vCPU per year.

    How fast is GizmoSQL?

    DuckDB (the engine) posts the #2 median hot-run time on ClickBench’s single-node reference benchmark, ahead of Snowflake, BigQuery, Redshift, and Databricks. GizmoSQL runs the full 22-query TPC-H benchmark at 1 TB in under 2 minutes for about $0.17 of compute.