diff --git a/README.md b/README.md index 3d4b8d7..5ba5987 100644 --- a/README.md +++ b/README.md @@ -108,7 +108,7 @@ CDC source capture is standardized on Debezium/Kafka Connect; downstream consume | Design decisions | `docs/decisions/` (ADRs) | | Public site | `site/` | | IaC | `infrastructure/terraform/`, `infrastructure/dv2/`, `helm/`, `k8s/` | -| DV2.0 warehouse | `warehouse/agentflow/dv2/` (hubs / links / satellites + X5 loader) | +| DV2.0 warehouse | `warehouse/agentflow/dv2/` (hubs / links / satellites + real-dataset loader) | ## Documentation diff --git a/docs/dv2-multi-branch/architecture.md b/docs/dv2-multi-branch/architecture.md index 258b2dc..333aea0 100644 --- a/docs/dv2-multi-branch/architecture.md +++ b/docs/dv2-multi-branch/architecture.md @@ -6,15 +6,16 @@ they go after. ## Storyline -Mid-market e-com (clothing / footwear) with 5 locations and 3 jurisdictions: +A mid-size Russian own-brand importer of small kitchen appliances, with 5 +locations and 3 jurisdictions — full legend in [`domain.md`](../domain.md): -| Branch | Region | Jurisdiction | Role | -| --------- | ------ | ------------ | ------------------------------------- | -| `msk` | RU | RU | HQ + flagship store + central WMS | -| `spb` | RU | RU | Regional hub | -| `ekb` | RU | RU | Regional hub | -| `dxb` | UAE | UAE | Edge office + local fulfillment | -| `ala` | KZ | KZ | Edge office + local fulfillment | +| Branch | Region | Jurisdiction | Role | +| --------- | ------ | ------------ | ----------------------------------------------------------------- | +| `msk` | RU | RU | HQ, central warehouse (fulfils all three RU channels), main WMS | +| `spb` | RU | RU | Regional warehouse + B2B showroom | +| `ekb` | RU | RU | Regional warehouse (Urals/Siberia dealer logistics) | +| `dxb` | UAE | UAE | Re-export trading hub, JAFZA free zone: China → Gulf market | +| `ala` | KZ | KZ | EAEU hub: Kazakhstan local market + EAEU customs contour | `record_source = {source_system}__{branch_code}` is load-bearing: it routes PII to a jurisdiction-local satellite and keeps cold-tier exports per-branch @@ -134,8 +135,11 @@ flowchart LR - 1 HQ cluster (`hq-demo`) with 3 kind nodes, labelled `branch=msk`. - Postgres + ClickHouse pinned via `nodeSelector` — proving the placement primitive that production would use at the edge. -- Synthetic seed populates `raw_vault` with the same `40/25/15/10/10` branch - distribution that X5 Retail Hero reproduces against real transactions. +- Synthetic seed populates `raw_vault` with the branch split from + [`generator-spec.md`](../generator-spec.md) §1/§7: order *count* is + msk-heavy (≈95%, since all FBS/D2C fulfils from the central warehouse) + while B2B *revenue* splits more evenly by branch (msk 59.6% / spb 14.3% / + dxb 10.6% / ekb 10.2% / ala 5.3%). - CDC bridge, business_vault MDM, cold-offload CronJob, and per-branch edge clusters (`dxb`, `ala`) are **out of scope for the demo runtime** but described above so the design is reproducible. diff --git a/docs/dv2-multi-branch/schema_dv2.md b/docs/dv2-multi-branch/schema_dv2.md index 9e9861d..385f903 100644 --- a/docs/dv2-multi-branch/schema_dv2.md +++ b/docs/dv2-multi-branch/schema_dv2.md @@ -2,7 +2,7 @@ ## Контекст -Multi-source / multi-branch e-com одежды/обуви. 5 локаций (MSK / SPB / EKB / DXB / ALA). Источники: 1С (УТ), Битрикс24, Excel-логистика, XML-обмен сайта, API маркетплейсов (ВБ/Озон). +Multi-source / multi-branch DWH own-brand импортёра малой бытовой техники (легенда: [`domain.md`](../domain.md)). 5 локаций (MSK / SPB / EKB / DXB / ALA). Источники: 1С (УТ/ЗУП), Битрикс24, WMS, Excel-логистика (контейнерные манифесты), собственный D2C-сайт, API маркетплейсов (ВБ/Озон). Naming convention основана на публичных данных и engineering-материалах крупных ритейлеров (X5 Retail Hero, Lenta BigTarget, Магнит). DDL-шаблоны — адаптация Celestinfo + Tampere DV2.0 automation patterns под ClickHouse.