Skip to Content
We are live but in Staging 🎉
TablesRecipesOverview

Recipes

Self-contained, runnable scenarios for the patterns developers actually ship with K3 Tables. Every recipe is grounded in real RPCs, real CLI commands, and the warehouse-compatible Scriptum catalog.

What’s here

RecipeKey APIsWhen you need it
Manual TableCreateTable · Insert · Merge · Query · Optimize · CompactYou have structured data + know the schema. SQL-first workflow end-to-end.
Pipeline-bound TableCreateTablePipeline · pipeline ingest plane · QueryYou have unstructured documents and want rows auto-extracted via a Scriptum template. Bridges Pipelines → Tables.
Time Travel & RestoreHistory · Restore · VacuumRecover from bad writes; understand the vacuum-retention safety window. Delta Lake’s signature feature.
CTAS & MaterializeExecute (CTAS) · MaterializeDerive new tables from SQL queries — analytical ETL within K3.

Conventions used in these recipes

  • CLI-first — every step has a dodil k3 table ... command. Anything not in the CLI today drops to curl against the API.
  • Endpoint examples use staging https://k3.dev.dodil.io. Production: https://k3.dodil.io.
  • Bucket placeholder is kb-prod; engine is auto-enabled there from CreateBucket.
  • Consistent example schema — most recipes use a fictional events table with composite PK (id, user_id), partition column event_type, and a JSON payload column. See Manual Table → step 1.

Other useful pages

  • Quickstart — first table + first INSERT + first query in 5 minutes
  • Core Concepts — Engine, Table, Column, strategies, freshness, history
  • SQL Compatibility — DuckDB dialect contract
  • API Reference — full surface (Tables · Data · Execute · Maintenance · Templates · Engine)
  • CLI Guide — every dodil k3 table / engine command