Protocol / Services / DuckDB Service
shippedLayer 1 · Protocol

DuckDB Service

An optional per-space DuckDB engine for analytical (OLAP) queries over a space's data, via tinycloud.duckdb/* capabilities.

DuckDB Service

The DuckDB service is an optional, per-space analytical engine, exercised through tinycloud.duckdb/* capabilities. Where the SQL service is the transactional store, DuckDB is the column-oriented OLAP engine for aggregate queries and exports over the same space.

Role

A Layer 1 service for read-heavy analytics. It exists so an owner can grant an analytics workload query access to a space's data without it touching the transactional SQL path.

Shape

  • resource{spaceId}/duckdb.
  • abilitiestinycloud.duckdb/{query, execute, export, …}.

Mechanics

The node runs DuckDB per space (tinycloud-core/src/duckdb/service.rs); the client surface is DuckDbService (packages/sdk-services/src/duckdb/). Authorization is identical to any other service: a capability over {spaceId}/duckdb verified through the delegation chain.

Relationships

A service over an space; transactional sibling sql; gated by capabilities; driven from data-apis.

Status & drift

Shipped as an optional service (a node may or may not enable it).

Sources

  • tinycloud-node: tinycloud-core/src/duckdb/service.rs
  • js-sdk: packages/sdk-services/src/duckdb/DuckDbService.ts