Zum Inhalt springen

Tenants Guide

jinflow ist Multi-Tenant. Jeder Tenant ist ein unabhaengiger analytischer Arbeitsbereich mit eigenen Daten, AFS und KLS.

live_root/
millesime/
domaine_zufferey/
afs/ ← analytisches Framework (Kopie des Packs + Tenant-spezifische Ergaenzungen)
raw/ ← unveraenderliche Quell-CSVs (aus DLZ)
build/ ← Intermediäre (kompiliertes SQL, angereicherte CSVs)
store/ ← KLS + SIS + Logs + Snapshots

Alle Befehle verwenden pack.tenant Notation:

Terminal-Fenster
jin make --tenant millesime.domaine_zufferey
jin explore --tenant millesime.domaine_zufferey
jin afs update --tenant millesime.domaine_zufferey
Terminal-Fenster
# Aus einem Pack-Namen (aufgeloest via pack_root)
jin init --pack millesime --tenant domaine_new --source-system opale
# Aus einem Pack-Pfad
jin init --pack /path/to/jinflow-pack-millesime --tenant domaine_new --source-system opale

Dies erstellt live_root/millesime/domaine_new/ mit:

  • afs/ — Kopie des Packs
  • raw/, build/, store/ — leer, bereit fuer Daten

Wenn das Pack aktualisiert wird (neue Signals, Theses usw.):

Terminal-Fenster
# Trockenlauf (sehen was sich aendern wuerde)
jin afs update --tenant millesime.domaine_zufferey
# Aenderungen anwenden
jin afs update --tenant millesime.domaine_zufferey --do-it
# Alle Tenants aller Packs
jin afs update --all --do-it
# Pack-Version bei Konflikten erzwingen
jin afs update --tenant millesime.domaine_zufferey --do-it --force

Three-Way-Sync: Pack-Basismanifest verfolgt was zuletzt synchronisiert wurde. Wenn sowohl Pack als auch Tenant dieselbe Datei geaendert haben → Konflikt (nicht ueberschrieben ausser --force).

Terminal-Fenster
jin make --tenant millesime.domaine_zufferey # einen Tenant bauen
jin make --pack millesime # alle Tenants im Pack
jin make --all # alle Tenants, alle Packs
jin make --all --sync # DLZ synchronisieren + bauen
jin make --tenant millesime.domaine_zufferey --extract # Excel → CSV → Sync → Build
jin make --tenant millesime.domaine_zufferey --clean # Intermediäre loeschen, vollstaendiger Rebuild
Terminal-Fenster
jin clone --source millesime.domaine_zufferey --name experiment
# Erstellt: millesime.domaine_zufferey_experiment (teilt DLZ mit Quelle)
Terminal-Fenster
jin make --snapshot # Auto-Tag: YYYYMMDD-HHMM
jin make --snapshot post-audit # benannter Tag

Snapshots sind unveraenderlich — make verweigert das Ueberschreiben.

Terminal-Fenster
# Standard-Tenant setzen
jin us --tenant millesime.domaine_zufferey
# Aktuelle Konfiguration anzeigen
jin us

Ausgabe:

Live Root: /path/to/jinflow-live
Pack Root: /path/to/jinflow-packhub (4 Packs)
DLZ: /path/to/jinflow-datalandingzone (ok)
Aktueller Tenant: millesime.domaine_zufferey

Jedes Pack ist eine unabhaengige analytische Domaene. Tenants gehoeren zu einem Pack:

live_root/
millesime/ ← Weinbau-Analytik
domaine_zufferey/
domaine_clavien/
alptrack/ ← Skigebiet-Analytik
resort_alpine/
resort_glacier/

Packs werden unabhaengig entwickelt (separate Git-Repos) und via jin afs update an Tenants synchronisiert.

jazzisnow jinflow is a jazzisnow product
v0.45.1 · built 2026-04-17 08:14 UTC