From 4d43b7badd2b5b1f979ac2b4dd09a3aaef088e71 Mon Sep 17 00:00:00 2001 From: Dmitry Dementev Date: Mon, 24 Aug 2026 13:40:45 -0400 Subject: [PATCH] =?UTF-8?q?docs(dds):=20=D0=B4=D0=BE=D0=BF=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D1=8B=20=D1=81=D0=BB=D0=B5=D0=B4=D1=81=D1=82=D0=B2?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=B9=20=D1=81?= =?UTF-8?q?=D0=B5=D1=81=D1=81=D0=B8=D0=B8=20=E2=80=94=20=D0=BB=D0=BE=D0=BA?= =?UTF-8?q?=D0=B0=D0=BB=D1=8C=D0=BD=D0=BE=D1=81=D1=82=D1=8C=20=D0=B8=20?= =?UTF-8?q?=D1=81=D1=83=D0=B4=D1=8C=D0=B1=D0=B0=20VisitID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Зачем: две находки горячего ревью #131 уровня решения, принятые владельцем. Что: в «Движок и наполнение» — следствие совпадения ключа шардирования с событиями: сессионизация локальна по природе, капкан смены ключа у сессий не стреляет; в «Сверку с эталоном» — зацепка для развилки #132: VisitID нужен сверке, но не сборке, его дом решает контракт dds.event_v. Проверка: вычитка; утверждение о локальности сверено с разделом «Раскладка по шардам» доки хранилища. Co-Authored-By: Claude Fable 5 --- docs/architecture/dds/session.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/architecture/dds/session.md b/docs/architecture/dds/session.md index c109332..dde6acb 100644 --- a/docs/architecture/dds/session.md +++ b/docs/architecture/dds/session.md @@ -68,6 +68,9 @@ ключ сортировки — кука и начало сессии, шардирование распределённой таблицы — `cityHash64(ClientID)`, тем же выражением, что у событий, — ко-локация с `dds.identity_map` ([дока хранилища](../storage.md), «Раскладка по шардам»). +Совпадение ключа с событиями не случайно: все события куки лежат на одном +шарде, поэтому сессионизация локальна по природе — капкан смены ключа при +вставке, который дока хранилища обещает сборкам DDS, у сессий не стреляет. Сборка — дневной батч после прихода слепка заказов: хранилище выше ODS по смыслу батчевое, раз второй источник приходит раз в сутки. К этому моменту @@ -92,7 +95,9 @@ компенсация ошибок внутри одной куки за день; эталон в модель не тащим — строка сессии остаётся нашей, а не генераторной. Поштучное сопоставление границ — материал лабы, где менти разбирает найденное расхождение руками. Дом проверки — -контур DQ этапа 4. +контур DQ этапа 4. Сверке нужен `VisitID`, а сборке сессий — нет; останется +ли он в контракте `dds.event_v` или проверка пойдёт за ним в ODS — решает +развилка #132. ## Читатели