feat(dds): денормализовано измерение dim_routes и упрощена витрина route_performance
- Зачем: - улучшение производительности аналитических запросов и упрощение витрин согласно принципам Kimball Star Schema. - Что: - в dds.dim_routes добавлены денормализованные поля городов и моделей самолетов. - в скрипт загрузки dim_routes_load.sql добавлена фаза refresh для актуализации атрибутов. - загрузка dm.route_performance упрощена до 1 JOIN к измерению маршрутов. - обновлен DAG bookings_to_gp_dds и smoke-тесты структуры графа. - в документации (db_schema.md) отражены денормализация и lineage версий. - в dim_routes_load.sql исправлено затирание _load_id при refresh исторических версий. - Проверка: - make test (smoke-тесты структуры DAG проходят успешно).
This commit is contained in:
@@ -70,7 +70,7 @@
|
||||
| `dds.dim_airplanes` | `airplane_code` (`airplane_bk`) | `airplane_sk` | `model`, `range_km`, `speed_kmh`, `total_seats` |
|
||||
| `dds.dim_tariffs` | `fare_conditions` | `tariff_sk` | `fare_conditions` |
|
||||
| `dds.dim_passengers` | `passenger_id` (`passenger_bk`) | `passenger_sk` | `passenger_name` (SCD1) |
|
||||
| `dds.dim_routes` | `route_no` (`route_bk`) | `route_sk` | `departure_airport`, `arrival_airport`, `airplane_code`, `hashdiff`, `valid_from`, `valid_to` (SCD2) |
|
||||
| `dds.dim_routes` | `route_no` (`route_bk`) | `route_sk` | `departure_airport`, `arrival_airport`, `airplane_code`, `departure_city` (денормализовано), `arrival_city` (денормализовано), `airplane_model` (денормализовано), `total_seats` (денормализовано), `hashdiff`, `valid_from`, `valid_to` (SCD2) |
|
||||
|
||||
### Факт DDS (Fact)
|
||||
|
||||
@@ -325,6 +325,8 @@ graph LR
|
||||
|
||||
ODS_Tickets -->|Extract Unique| DIM_Passengers
|
||||
ODS_Routes -->|SCD2 with hashdiff| DIM_Routes
|
||||
DIM_Airports -.->|Enrich cities| DIM_Routes
|
||||
DIM_Airplanes -.->|Enrich model and seats| DIM_Routes
|
||||
|
||||
%% Fact assembly (Main process + route point-in-time)
|
||||
ODS_Segments -->|Main Stream| FACT_Sales
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# План: Денормализация dim_routes + упрощение route_performance
|
||||
|
||||
> **Статус:** запланировано, не реализовано.
|
||||
> **Статус:** реализовано.
|
||||
|
||||
## Контекст
|
||||
|
||||
|
||||
Reference in New Issue
Block a user