Упростить имена таблиц заказов в ODS #109

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

Цель

Убрать способ доставки из имён физических таблиц заказов в ODS. Менти должен
видеть одну сущность order, а слепок — распознавать по контракту источника и
колонке snapshot_date, не по имени таблицы.

Находка сделана при ручной проверке #96; связанный словарь имён согласован по
итогам этой проверки.

Форма

  • ods.order_snapshot_rep → ods.order_rep;
  • ods.order_snapshot_dist → ods.order_dist;
  • ods.order_snapshot_errors_rep → ods.order_errors_rep;
  • ods.order_snapshot_errors_dist → ods.order_errors_dist;
  • привести к тому же словарю SQL-файлы, DAG, проверки и текущую документацию.

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

  • По итогам ручного тестирования #96 собраны и согласованы все связанные находки по именам.
  • В актуальной схеме ODS нет таблиц order_snapshot_*.
  • ods.order_v читает актуальные версии из ods.order_dist.
  • Приём заказов и таблица брака используют новые имена во всех запросах и проверках.
  • Документация последовательно различает заказ, его бизнес-версию и слепок источника.
  • Холодный подъём и проверки стенда проходят на новой схеме.

Границы

  • Не менять формат слепка и колонку snapshot_date.
  • Не менять зерно, ReplacingMergeTree(updated_at), шардирование и семантику ods.order_v.
  • Не добавлять совместимые представления со старыми именами: стенд учебный и поднимается с чистых томов.
  • Не затрагивать модель DDS и витрины.

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

  • docs/adr/0010-order-versions-in-ods.md;
  • docs/architecture/orders/ingestion.md;
  • sql/ddl/20-ods-tables.sql;
  • sql/ddl/30-ods-views.sql;
  • dags/orders_ingest.py.

Проверка

  • make config-test
  • make lint
  • make clean && make up
  • make smoke
  • make check-clickhouse
  • make check-services
## Цель Убрать способ доставки из имён физических таблиц заказов в ODS. Менти должен видеть одну сущность `order`, а слепок — распознавать по контракту источника и колонке `snapshot_date`, не по имени таблицы. Находка сделана при ручной проверке #96; связанный словарь имён согласован по итогам этой проверки. ## Форма - `ods.order_snapshot_rep` → `ods.order_rep`; - `ods.order_snapshot_dist` → `ods.order_dist`; - `ods.order_snapshot_errors_rep` → `ods.order_errors_rep`; - `ods.order_snapshot_errors_dist` → `ods.order_errors_dist`; - привести к тому же словарю SQL-файлы, DAG, проверки и текущую документацию. ## Критерии приёмки - [x] По итогам ручного тестирования #96 собраны и согласованы все связанные находки по именам. - [x] В актуальной схеме ODS нет таблиц `order_snapshot_*`. - [x] `ods.order_v` читает актуальные версии из `ods.order_dist`. - [x] Приём заказов и таблица брака используют новые имена во всех запросах и проверках. - [x] Документация последовательно различает заказ, его бизнес-версию и слепок источника. - [x] Холодный подъём и проверки стенда проходят на новой схеме. ## Границы - Не менять формат слепка и колонку `snapshot_date`. - Не менять зерно, `ReplacingMergeTree(updated_at)`, шардирование и семантику `ods.order_v`. - Не добавлять совместимые представления со старыми именами: стенд учебный и поднимается с чистых томов. - Не затрагивать модель DDS и витрины. ## Сначала прочитать - `docs/adr/0010-order-versions-in-ods.md`; - `docs/architecture/orders/ingestion.md`; - `sql/ddl/20-ods-tables.sql`; - `sql/ddl/30-ods-views.sql`; - `dags/orders_ingest.py`. ## Проверка - `make config-test` - `make lint` - `make clean && make up` - `make smoke` - `make check-clickhouse` - `make check-services`
ddmitry added the needs-info label 2026-08-20 18:23:16 +03:00
ddmitry added ready-for-agent and removed needs-info labels 2026-08-20 19:11:16 +03:00
ddmitry removed the ready-for-agent label 2026-08-21 11:04:24 +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#109