docs(internal): обновлен статус задач в архитектурном обзоре
- Зачем: - необходимо синхронизировать документацию с фактически выполненными изменениями в коде. - Что: - отмечена как выполненная задача по явному указанию storage type для всех таблиц. - обновлено обоснование для dds.dim_calendar (AO Row из-за малой ширины таблицы). - отмечен как выполненный рефакторинг hashdiff в dim_routes_load.sql. - Проверка: - визуальная сверка docs/internal/architecture_review.md с файлами в sql/dds/ и sql/ods/.
This commit is contained in:
@@ -97,10 +97,10 @@ GP-специфичная best practice, которую забывают даж
|
|||||||
|
|
||||||
### P2: Средние усилия, заметное улучшение качества
|
### P2: Средние усилия, заметное улучшение качества
|
||||||
|
|
||||||
- [ ] **Явный storage type для всех таблиц + AO где возможно** ✅ РЕШЕНИЕ ПРИНЯТО
|
- [x] **Явный storage type для всех таблиц + AO где возможно** ✅ РЕШЕНИЕ ПРИНЯТО
|
||||||
- 18 из 28 таблиц имеют неявный heap (нет `WITH`) — студент не видит, что выбор сделан
|
- 18 из 28 таблиц имели неявный heap (нет `WITH`) — теперь выбор сделан явно
|
||||||
- **Целевая раскладка по storage:**
|
- **Целевая раскладка по storage:**
|
||||||
- **AO Column Store**: `dds.dim_calendar` (write-once, generate_series)
|
- **AO Row + zstd**: `dds.dim_calendar` (узкая таблица, column-store не даёт выигрыша)
|
||||||
- **AO Row + zstd**: ODS snapshot-справочники (`airports`, `airplanes`, `routes`, `seats`)
|
- **AO Row + zstd**: ODS snapshot-справочники (`airports`, `airplanes`, `routes`, `seats`)
|
||||||
— перевести загрузку с UPSERT на TRUNCATE+INSERT (честнее для full snapshot семантики)
|
— перевести загрузку с UPSERT на TRUNCATE+INSERT (честнее для full snapshot семантики)
|
||||||
- **AO Row + zstd**: `dds.dim_tariffs` (только INSERT, нет UPDATE)
|
- **AO Row + zstd**: `dds.dim_tariffs` (только INSERT, нет UPDATE)
|
||||||
@@ -114,9 +114,9 @@ GP-специфичная best practice, которую забывают даж
|
|||||||
- Файлы: все `*_ddl.sql` в ods/, dds/, dm/ + переписать 4 ODS snapshot load-скрипта
|
- Файлы: все `*_ddl.sql` в ods/, dds/, dm/ + переписать 4 ODS snapshot load-скрипта
|
||||||
- См. ADR-3
|
- См. ADR-3
|
||||||
|
|
||||||
- [ ] **Дублирование hashdiff CTE в dim_routes_load.sql**
|
- [x] **Дублирование hashdiff CTE в dim_routes_load.sql**
|
||||||
- `md5(COALESCE(...))` повторяется в Statement 1 и Statement 2, ROW_NUMBER() — 3 раза
|
- md5(COALESCE(...)) повторяется в Statement 1 и Statement 2, ROW_NUMBER() — 3 раза
|
||||||
- **Решение**: вынести в `CREATE TEMP TABLE tmp_routes_src ON COMMIT DROP`
|
- **Решение**: вынесено в CREATE TEMP TABLE tmp_routes_src ON COMMIT DROP ✅ ВЫПОЛНЕНО
|
||||||
- Файл: `sql/dds/dim_routes_load.sql`
|
- Файл: `sql/dds/dim_routes_load.sql`
|
||||||
|
|
||||||
- [ ] **Несогласованность нейминга STG vs ODS+** ✅ РЕШЕНИЕ ПРИНЯТО
|
- [ ] **Несогласованность нейминга STG vs ODS+** ✅ РЕШЕНИЕ ПРИНЯТО
|
||||||
|
|||||||
Reference in New Issue
Block a user