Zug Zug.
Guides

Connect a warehouse

Point Zug Zug at a warehouse column with a read-only credential and start scanning source values.

Zug Zug reads your warehouse; it never writes to it unless you explicitly opt in. A read-only credential is enough to get started.

Attach the warehouse

Set these in your server environment (server/.env):

ATTACH_WAREHOUSE=true
WAREHOUSE_ADAPTER=motherduck   # or: snowflake
MOTHERDUCK_TOKEN=...           # read-only token

With ATTACH_WAREHOUSE=false (the default demo mode), the whole record-and-publish workflow still works against Postgres — handy for trying things out without a warehouse at all.

Snowflake (experimental)

Snowflake uses key-pair (JWT) auth. Set WAREHOUSE_ADAPTER=snowflake and register the connection in Settings → Warehouse with these fields:

FieldNotes
accountYour account identifier (e.g. orgname-account).
userThe Snowflake user the key belongs to.
privateKeyPEM-encoded private key; the public key is set on the user in Snowflake.
privateKeyPassphraseOptional — only if the key is encrypted.
warehouseCompute warehouse to run scans on.
database / schemaWhere your source tables live.

Experimental — register sources by path

The scan and publish paths work, but warehouse catalog auto-discovery isn't wired up yet: Zug Zug can't enumerate your databases and schemas for you. Register sources by their explicit database.schema.table path rather than browsing. Validate against a non-critical schema first, and prefer pull-first publishing.

Register a source

A source is a warehouse column you want Zug Zug to watch. Register one against a table, and Zug Zug scans its DISTINCT values — with frequency counts — and surfaces the ones still waiting for a mapping in Review.

Read-only, always

Scanning issues SELECT DISTINCT and nothing else. Your warehouse is never modified unless you configure a writable adapter and turn it on.

Next

Once values are mapped and approved, publish to materialize the dim_<x> / map_<x> tables.

On this page