Добавить каноническое чтение актуальных событий через ods.event_v #86

Open
opened 2026-08-16 20:18:33 +03:00 by ddmitry · 0 comments
Owner

Part of #69.

Цель

Добавить ods.event_v как каноническую точку точного чтения актуальных событий. Представление сохраняет зерно события, имена и типы source-aligned полей ODS, но скрывает от потребителя FINAL или эквивалентное схлопывание версий.

Учебный результат: менти видит границу между физическими версиями ReplacingMergeTree и стабильным чтением текущего состояния.

Критерии приёмки

  • ods.event_v создано как обычное представление (_v) и возвращает те же source-aligned поля на том же зерне события, что ods.event_rep / ods.event_dist.
  • Через ods.event_v видна ровно актуальная версия каждого события независимо от фоновых слияний; потребителю не нужно писать FINAL.
  • Проверка стартового мира, которой нужен актуальный счёт, читает ods.event_v; ожидание доставки и другие проверки физических строк остаются на ods.event_dist.
  • docs/architecture/storage.md и мастер-спека различают ods.event_v (актуальное состояние ODS) и будущий dds.event_v (бизнес-представление).

Границы

  • Не менять ods.event_rep и ods.event_dist, их движки, ключи, поля и зерно.
  • Не переименовывать поля в snake_case, не расшифровывать коды и не добавлять бизнес-модель; dds.event_v вне задачи.
  • Не переводить на представление проверки доставки, которым нужны физически поступившие строки.
  • Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта.

Сначала прочитать

  • docs/adr/0005-event-ingestion.md;
  • docs/adr/0006-object-naming.md;
  • docs/architecture/storage.md, разделы «Имена объектов» и «Приём событий»;
  • резолюцию #80;
  • docs/architecture/testing.md, раздел об интеграционной проверке.

Проверка

  • make config-test
  • make check-clickhouse на чисто поднятом стенде

Отдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.

Part of #69. ## Цель Добавить `ods.event_v` как каноническую точку точного чтения актуальных событий. Представление сохраняет зерно события, имена и типы source-aligned полей ODS, но скрывает от потребителя `FINAL` или эквивалентное схлопывание версий. Учебный результат: менти видит границу между физическими версиями `ReplacingMergeTree` и стабильным чтением текущего состояния. ## Критерии приёмки - [ ] `ods.event_v` создано как обычное представление (`_v`) и возвращает те же source-aligned поля на том же зерне события, что `ods.event_rep` / `ods.event_dist`. - [ ] Через `ods.event_v` видна ровно актуальная версия каждого события независимо от фоновых слияний; потребителю не нужно писать `FINAL`. - [ ] Проверка стартового мира, которой нужен актуальный счёт, читает `ods.event_v`; ожидание доставки и другие проверки физических строк остаются на `ods.event_dist`. - [ ] `docs/architecture/storage.md` и мастер-спека различают `ods.event_v` (актуальное состояние ODS) и будущий `dds.event_v` (бизнес-представление). ## Границы - Не менять `ods.event_rep` и `ods.event_dist`, их движки, ключи, поля и зерно. - Не переименовывать поля в snake_case, не расшифровывать коды и не добавлять бизнес-модель; `dds.event_v` вне задачи. - Не переводить на представление проверки доставки, которым нужны физически поступившие строки. - Не заводить общий слой представлений или отдельный постоянный контур проверок ради одного объекта. ## Сначала прочитать - `docs/adr/0005-event-ingestion.md`; - `docs/adr/0006-object-naming.md`; - `docs/architecture/storage.md`, разделы «Имена объектов» и «Приём событий»; - резолюцию #80; - `docs/architecture/testing.md`, раздел об интеграционной проверке. ## Проверка - `make config-test` - `make check-clickhouse` на чисто поднятом стенде Отдельную постоянную цель не добавлять: существующая сверка стартового мира должна доказать точный актуальный счёт через новое представление.
ddmitry added the ready-for-agent label 2026-08-16 20:18:34 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ddmitry/clickstream-data-platform#86