From 40de2e5c5fff525fcee481e092f216edbe6a7fd1 Mon Sep 17 00:00:00 2001 From: Dmitry Dementev Date: Mon, 24 Aug 2026 12:06:54 -0400 Subject: [PATCH] =?UTF-8?q?docs(dds):=20=D0=B2=D1=8B=D1=87=D0=B8=D1=82?= =?UTF-8?q?=D0=B0=D0=BD=D1=8B=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=8C=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=BA=D0=B0=D0=B7=D0=B0=20=D0=B8=20=D0=BA=D0=B0?= =?UTF-8?q?=D1=80=D1=82=D0=B0=20=D1=81=D0=BB=D0=BE=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Зачем: - горячее ревью после написания: неточности формулировок и один пропуск в списке читаемых колонок. - Что: - уточнено, что дом набора выбран развилкой #130, а не «первой развилкой карты» (первыми шли research-тикеты); - сверке добавлен order_date в перечень читаемых колонок (спека, §7: колонка order_day); - мастер-спека слинкована при первом упоминании; пояснена роль резолюции #128 в «Связанных решениях». - Проверка: - только документы; ссылки сверены с деревом docs/. Co-Authored-By: Claude Fable 5 --- docs/architecture/dds/README.md | 5 +++-- docs/architecture/dds/order.md | 10 ++++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/architecture/dds/README.md b/docs/architecture/dds/README.md index bca2b70..1da3e8f 100644 --- a/docs/architecture/dds/README.md +++ b/docs/architecture/dds/README.md @@ -7,8 +7,9 @@ Рамки заданы мастер-спекой [«Боевой реализм стенда (v2)»](../../specs/2026-07-30-stand-v2-realism.md): карта таблиц и витрины — раздел 7, сверка — раздел 4, склейка идентичностей — раздел 5. Дом выбран -на первой развилке карты: резолюции этапа 4 живут здесь, по хранилищную -сторону границы «источник | хранилище». Устройство источников остаётся их +развилкой #130 — первой, которой понадобилось записать резолюцию в доки: +записи этапа 4 живут здесь, по хранилищную сторону границы +«источник | хранилище». Устройство источников остаётся их собственным наборам ([заказы бэкенда](../orders/README.md)) — генератор переносим и о нашем DDS не знает. diff --git a/docs/architecture/dds/order.md b/docs/architecture/dds/order.md index 1af14a6..3d65bc9 100644 --- a/docs/architecture/dds/order.md +++ b/docs/architecture/dds/order.md @@ -30,7 +30,8 @@ K живёт на текущем состоянии само: пересборк одной длины — артикул, количество, цена (`Decimal`). Это родная для ClickHouse денормализация: позиция не живёт без заказа и собственного ключа не имеет, а разворачивает массивы читатель — `ARRAY JOIN` в витрине -выручки, с обогащением категорией через `dictGet` (спека, раздел 7). Разбор +выручки, с обогащением категорией через `dictGet` +([мастер-спека](../../specs/2026-07-30-stand-v2-realism.md), раздел 7). Разбор JSON происходит один раз, на границе ODS → DDS, куда его и положила спека (раздел 2); записывать его параллельными колонками-массивами или `Nested` — выбор DDL, не модели. @@ -82,8 +83,8 @@ JSON происходит один раз, на границе ODS → DDS, ку - Витрина выручки `dm.revenue_daily_v`: заказы в `paid`, `ARRAY JOIN` позиций, категория через `dictGet` (спека, раздел 7). -- Сверка `dm.purchase_vs_orders_v`: `order_id`, `items_total`, `status`; - соединение — GLOBAL JOIN с обеими сторонами-подзапросами +- Сверка `dm.purchase_vs_orders_v`: `order_id`, `order_date`, `items_total`, + `status`; соединение — GLOBAL JOIN с обеими сторонами-подзапросами ([исследование соединений](../../research/2026-08-22-distributed-join.md)). - Сборка `dds.identity_map`: пара `order_id` ↔ `user_id`. @@ -124,4 +125,5 @@ JSON происходит один раз, на границе ODS → DDS, ку четыре координаты строки ODS. - [Проталкивание условий сквозь представления](../../research/2026-08-22-view-predicate-pushdown.md) — - цена `FINAL` и представлений; принято картой #127 до этой развилки. + резолюция #128 той же карты: цена `FINAL` и цепочек представлений, фон, на + котором здесь выбрана физическая таблица.