
GizmoSQL
A database server that wraps DuckDB (or SQLite) and serves it to many clients over Arrow Flight SQL, with TLS and authentication.
- What it is
- Query engines
- Type
- Open source
- Made by
- GizmoData LLC
- License
- Apache 2.0 (Core); Enterprise features proprietary
- Facts checked
- 6 October 2026
What it is
DuckDB runs inside one program, and only one process can write to a database file. GizmoSQL is a server process that owns that DuckDB instance and lets many clients share it over the network. Clients speak Arrow Flight SQL, a gRPC protocol in which results travel as Arrow record batches, so DuckDB’s columnar output reaches the client without being turned into rows. The server listens on port 31337 with TLS or mutual TLS, password login and server-signed JWT tokens. Connect with JDBC, ADBC (Python, Go, C/C++, R), ODBC or the bundled gizmosql_client shell; adapters cover dbt, SQLMesh, Ibis, SQLAlchemy, Superset, Metabase, Grafana and Power BI. Whatever DuckDB can do, the server can do: query Parquet on object storage, attach DuckLake catalogs, load extensions. SQLite is a second, switchable backend. It ships as Docker images, Homebrew and Windows installers, a Kubernetes operator and an iOS app meant for demos.
GizmoData LLC sells it as open core. GizmoSQL Core is Apache 2.0 and free. Enterprise adds session instrumentation and KILL SESSION, per-catalog permissions, SSO through OIDC, statement queuing and Prometheus metrics, unlocked by a signed licence key, at $300 per vCPU per year with a $1,500 yearly minimum per server. GizmoData Cloud, launched in September 2026, runs managed clusters on AWS, Google Cloud and Azure on prepaid plans from $29 a month. The current release, v1.41.0, bundles DuckDB 1.5.6, with 1.4.5 on a long-term support channel.
Why teams pick it
- Turns a DuckDB file into a shared network database with TLS and logins, in one container
- Columnar Arrow Flight SQL on the wire, with JDBC, ADBC and ODBC drivers so BI tools and notebooks connect directly
- Full DuckDB SQL and extensions: Parquet and S3, DuckLake catalogs, spatial
- Apache 2.0 core that runs on Linux, macOS, Windows and Kubernetes
Watch out for
- Still one DuckDB on one machine: it scales up, not out
- Operational controls such as SSO, per-catalog permissions, killing sessions, statement queuing and metrics are Enterprise only, billed per vCPU
- The licence has moved before: it needed a licence key for production use until June 2025, and Enterprise code is proprietary
- A small, founder-led vendor; Philip Moore wrote most of the commits
- DuckDB now has its own server protocol, Quack; in the DuckDB team’s benchmark it moved 60 million rows in 4.9 s, against 17.4 s through GizmoSQL
Alternatives
What all query engines have in common →
Amazon AthenaAWSAWS’s serverless SQL engine for data in S3: no cluster to run, and on-demand queries cost $5 per TB scanned.
Apache CalciteOpen sourceA Java framework with everything a database needs to understand a query (SQL parser, validator, relational algebra and a rule-based, cost-based optimizer) but no storage of its own, which Hive, Flink, Druid, Dremio, Beam and many other systems embed as their SQL front end and planner.
Apache ZeppelinOpen sourceA self-hosted web notebook where each paragraph runs through an interpreter: Spark, Flink, JDBC, Python and more. Maintained, but behind Jupyter and Databricks in reach.
HotdataCommercialA managed SQL engine for AI agents, built in Rust on Apache DataFusion and Arrow: each agent gets short-lived “instant databases” to load data into, then runs read-only SQL, vector, full-text and geospatial queries over an HTTP API or CLI.
IbisOpen sourceA Python dataframe API that compiles to SQL, so the same code runs on DuckDB on a laptop and on BigQuery, Snowflake, PostgreSQL or more than 20 other engines.
Spice.ai OSSOpen sourceA single-binary SQL engine in Rust, built on DataFusion and Arrow, that federates queries across databases, warehouses and lakes, keeps hot datasets in a local accelerated copy, and adds search and LLM APIs on top.
VeloxOpen sourceMeta’s open-source C++ execution engine library: it takes an already-optimized query plan and runs it with vectorized operators, and it is the engine inside Presto’s C++ workers (Prestissimo) and Apache Gluten’s native Spark.How it fits with other technologies
Serve a DuckDB file, then query it from another machine · bash
# Server: share ./data/sales.duckdb on port 31337 with TLS and a password
docker run --name gizmosql --detach --rm --tty --init \
--publish 31337:31337 \
--env TLS_ENABLED="1" \
--env GIZMOSQL_PASSWORD="change-me" \
--mount type=bind,source=$(pwd)/data,target=/opt/gizmosql/data \
--env DATABASE_FILENAME="data/sales.duckdb" \
gizmodata/gizmosql:latest
# Client: any Flight SQL driver works; this is the bundled shell (brew install gizmosql)
GIZMOSQL_PASSWORD="change-me" gizmosql_client \
--host db.internal --username gizmosql_user --tls --tls-skip-verify \
--command "SELECT region, sum(amount) AS revenue FROM orders GROUP BY region"Editions and list prices#
List prices from GizmoData’s pages, checked on 6 October 2026, in US dollars.
GizmoSQL Core
free, Apache 2.0The server, DuckDB and SQLite backends, Flight SQL, TLS and mTLS, passwords and JWT tokens, query timeouts. You run it.
GizmoSQL Enterprise
$300 per vCPU per yearCore plus SSO, per-catalog permissions, session instrumentation and KILL SESSION, statement queuing and Prometheus metrics. Minimum $1,500 a year per server. You run it, with a licence key.
GizmoData Cloud
from $29 a monthManaged GizmoSQL clusters on AWS, Google Cloud or Azure. The plan fee (Starter $29, Team $99, Business $499 a month) comes back as compute credit billed by the hour; managed storage is $0.05 per GB-month.
See it in a real stack
No architecture uses GizmoSQL yet. Drop it into the playground and wire it up yourself.Open playground →Benchmarks
How to read a benchmark →Where it came from2022–2026
Arrow Flight SQL gave databases a way to send query results as columnar Arrow data instead of row by row. In April 2022 Tom Drabas at Voltron Data started an example Flight SQL server with SQLite and DuckDB backends. Philip Moore, a long-time data engineer then at Voltron Data, did most of the later work, and the example grew into a project called SQLFlite.
DuckDB’s in-process design left no built-in way for many users to share one database over a network. In October 2024 Moore forked SQLFlite under his own company, GizmoData, as GizmoSQL. At first it was a licensed product that printed a warning when run without a key. In June 2025 he made it open source under Apache 2.0, and in January 2026 added a separate, proprietary Enterprise edition. GizmoData Cloud, a managed version, followed in September 2026. By then DuckDB had shipped its own client-server protocol, Quack, citing Flight SQL servers among the workarounds people had built.
Why it’s built this way
- Arrow Flight SQL instead of the PostgreSQL wire protocol
- DuckDB already produces Arrow data. Sending Arrow batches over gRPC keeps results columnar end to end, and the Arrow project supplies JDBC and ADBC drivers.
- One server process that owns the database
- Only one process can write to a DuckDB file. A server that holds the single instance lets many clients read and write through it.
- Open core, with paid features in a separate directory
- Core stays Apache 2.0, while enterprise controls live in
src/enterprise/under a commercial licence and unlock with a signed key.
Timeline
- 2022
Voltron Data starts a Flight SQL server example on DuckDB and SQLite
- 2024
Philip Moore forks it as GizmoSQL in October, as a licensed product
- 2025
GizmoSQL becomes open source under Apache 2.0 in June
- 2026
Proprietary Enterprise edition in January; DuckDB ships Quack in May
- 2026
GizmoData Cloud launches in September
- SQLFlite (formerly flight-sql-server-example) on GitHub, Voltron Data
- SQLFlite: first commit by Tom Drabas (Apr 2022)
- GizmoSQL commit: renamed from SQLFlite to GizmoSQL (Oct 2024)
- GizmoSQL commit: converting project to open source (Jun 2025)
- GizmoSQL commit: GizmoSQL Enterprise (Jan 2026)
- GizmoData: About (Philip Moore)
- DuckDB blog: Quack, the DuckDB client-server protocol (May 2026)
Sources20 · facts checked 6 October 2026
- GizmoSQL README (backends, editions, clients, integrations, platforms, component versions)
- GizmoSQL v1.41.0 release (Oct 2026)
- GizmoSQL LICENSE (Apache 2.0)
- GizmoSQL Enterprise licence (src/enterprise/LICENSE)
- GizmoSQL docs: Editions (Core and Enterprise features, licence keys)
- GizmoSQL docs: DuckLake integration
- GizmoSQL docs: Home (Docker, initialization SQL)
- GizmoData: GizmoSQL product and pricing page
- GizmoData Cloud: plans and pricing
- GizmoData blog: Introducing GizmoData Cloud (Sep 2026)
- GizmoSQL contributors on GitHub
- dbt-gizmosql adapter
- GizmoSQL Kubernetes operator
- Apache Arrow docs: Arrow Flight SQL
- DuckDB docs: Concurrency (one writing process per file)
- DuckDB blog: Quack, the DuckDB client-server protocol (design, auth, benchmark vs GizmoSQL)
- MotherDuck pricing
- MotherDuck docs: Architecture and capabilities (Ducklings, attaching md:)
- MotherDuck blog: MotherDuck now speaks Postgres (Mar 2026)
- MotherDuck docs: pricing and billing