19 KiB
ai1
1
Разберу вопрос по частям: сначала — полная структура DWH с предшествующими слоями, затем — как назвать слой с отчётами и дашбордами.
Полная архитектура DWH: слои и их состав
Предшествующие презентационному слою
-
Staging Layer (промежуточный слой)
- Назначение: временное хранение данных сразу после извлечения из источников.
- Состав: копии исходных данных без изменений, логи загрузки, контрольные суммы.
- Срок хранения: от нескольких часов до нескольких дней.
-
Raw Data Layer / ODS (Operational Data Store)
- Назначение: первичная консолидация данных в неизменном виде.
- Состав:
- сырые данные из CRM, ERP, API, логов и т. д.;
- файлы форматов JSON, XML, CSV, XLSX;
- записи с ошибками и дубликатами (сохраняются для аудита);
- временные метки загрузки.
-
Core Layer / Integration Layer (ядро хранилища)
- Назначение: очистка, нормализация и интеграция данных.
- Состав:
- очищенные и дедуплицированные записи;
- унифицированные справочники (клиенты, продукты, регионы);
- нормализованные таблицы в 3NF или Data Vault;
- суррогатные ключи;
- механизмы SCD (Slowly Changing Dimensions) для отслеживания изменений;
- единая структура данных с историей изменений.
-
Data Marts Layer (слой витрин данных)
- Назначение: подготовка данных под конкретные бизнес‑задачи.
- Состав:
- тематические витрины (продажи, финансы, маркетинг, логистика);
- схемы «звезда» (Star Schema) и «снежинка» (Snowflake Schema);
- денормализованные таблицы для быстрого доступа;
- агрегированные показатели (месячные продажи, средний чек и т. п.).
Презентационный слой (Presentation / Business Intelligence Layer)
Назначение: предоставление данных конечным пользователям в удобной для анализа форме.
Полный состав:
-
Витрины данных (Data Marts)
- специализированные подмножества данных для отделов или функций;
- оптимизированы для конкретных запросов (например,
sales_mart,finance_mart).
-
Схемы «звезда» и «снежинка»
- Звезда: центральная таблица фактов (Fact Table) + таблицы измерений (Dimension Tables);
- Снежинка: нормализованные таблицы измерений для уменьшения избыточности.
-
Материализованные представления (Materialized Views)
- кэшированные результаты сложных запросов;
- ускоряют генерацию отчётов за счёт предварительного расчёта.
-
OLAP‑кубы (Online Analytical Processing Cubes)
- многомерные структуры для интерактивного анализа;
- поддерживают операции: drill‑down, roll‑up, slice, dice;
- примеры инструментов: Microsoft Analysis Services, IBM Cognos.
-
Обогащённые таблицы и агрегаты
- таблицы с предварительно рассчитанными KPI (выручка, маржинальность, retention);
- денормализованные структуры для минимизации JOIN‑ов.
-
Семантический слой (Semantic Layer)
- бизнес‑глоссарий с определениями метрик;
- правила расчёта KPI;
- маппинг бизнес‑терминов на технические поля базы данных.
-
Метаданные и каталоги данных
- описания источников, трансформаций, зависимостей;
- lineage данных (от источника до витрины);
- права доступа и политики безопасности.
-
Интерфейсы доступа
- SQL‑эндпоинты для запросов;
- REST/SOAP API для интеграции с BI‑системами;
- подключения к OLAP‑серверам.
Как назвать слой с отчётами и дашбордами?
Этот слой не является частью DWH в классическом понимании. Он располагается поверх презентационного слоя и имеет несколько вариантов названий:
-
BI Layer (Business Intelligence Layer) — наиболее распространённый термин.
- включает дашборды, отчёты, интерактивные визуализации;
- инструменты: Power BI, Tableau, Qlik, Looker.
-
Analytics Layer (аналитический слой) — если акцент на продвинутой аналитике.
- содержит не только отчёты, но и модели машинного обучения, прогнозные дашборды.
-
Consumption Layer (слой потребления данных) — универсальный вариант.
- охватывает все формы потребления данных: отчёты, API, экспорт в Excel, оповещения.
-
Reporting Layer (слой отчётности) — если фокус строго на статических отчётах.
- подходит для сред с регламентированной отчётностью (финансы, госрегулируемые отрасли).
-
Presentation & Visualization Layer — подчёркивает визуализацию.
- акцентирует внимание на дашбордах и интерактивных графиках.
Итоговая схема архитектуры
Источники данных
↓
Staging Layer
↓
Raw Data Layer / ODS
↓
Core Layer (интеграция и очистка)
↓
Data Marts Layer (витрины)
↓
Presentation Layer (агрегаты, кубы, семантика)
↓
BI Layer / Consumption Layer (отчёты, дашборды в Power BI/Tableau)
Ключевой вывод: отчёты и дашборды находятся в BI Layer (или Consumption Layer), который подключается к презентационному слою DWH, но не входит в его состав.
2 Data Marts & Presentation Layer
В разговорах об архитектуре DWH действительно часто говорят, что Data Marts входят в состав презентационного слоя. Я бы сказала так: это не жёсткое правило, а распространённая практика, и тут есть важный нюанс, который часто упускают.
Суть в том, что термин «презентационный слой» (Presentation Layer) иногда используют как обобщающее понятие для всего, что находится ближе к конечному пользователю. А Data Marts в этой логике — один из ключевых инструментов внутри него. То есть презентационный слой не обязательно состоит только из витрин: туда же могут входить семантические слои (semantic layer), материализованные представления, OLAP-кубы, а также сами инструменты визуализации (Power BI, Tableau, Qlik), через которые бизнес-пользователи строят отчёты и дашборды. 1710
Почему так? Задача этого уровня — преобразовать тщательно подготовленную аналитическую модель (которая живёт в ядре DWH) в формат, удобный для потребления. Витрины данных как раз решают эту задачу: они создают тематические, часто денормализованные срезы (например, «продажи», «финансы», «маркетинг»), оптимизированные под конкретные задачи отдела. Это сокращает путь от сырых данных к отчёту и ускоряет работу аналитиков. 312
Но есть и другой взгляд. В некоторых архитектурных моделях (например, в Layered Scalable Architecture — LSA) слой витрин (Data Marts Layer) выделяют как отдельный, самостоятельный уровень — между ядром хранилища и собственно инструментами отчётности. То есть в такой схеме цепочка выглядит так: источники → staging → ODS → ядро (Core) → Data Marts → инструменты визуализации. Здесь презентационный слой в узком смысле — это уже сами BI-инструменты и дашборды, а Data Marts служат промежуточным «буфером». 8
Итог: когда говорят, что Data Marts входят в презентационный слой, имеют в виду широкую трактовку термина — всё, что непосредственно обслуживает конечного пользователя. А если речь о детальной архитектурной схеме с чётким разделением этапов, витрины могут быть выделены в отдельный слой перед финальным потреблением. 18
Поэтому, когда обсуждаете архитектуру с коллегами, полезно сразу уточнить: говорят ли они о широком «слое потребления» (куда входят и витрины, и BI) или о строгой последовательности этапов обработки. 18
3
Разберу вопрос подробно — сначала про состав презентационного слоя в DWH (Data Warehouse), затем про отчёты.
Состав презентационного слоя (Presentation Layer / Business Intelligence Layer) в DWH
Презентационный слой — финальный уровень хранилища данных, ориентированный на конечного пользователя (аналитиков, менеджеров, бизнес‑пользователей). Его задача — предоставить данные в удобной для анализа и отчётности форме.
Основные компоненты слоя:
-
Витрины данных (Data Marts)
- Специализированные подмножества данных из корпоративного хранилища, сфокусированные на конкретной бизнес‑области (продажи, финансы, маркетинг и т. д.).
- Часто организованы по схеме «звезда» (Star Schema) или «снежинка» (Snowflake Schema).
- Упрощают доступ к данным для целевых групп пользователей.
-
Схемы «звезда» и «снежинка»
- Звезда: центральная таблица фактов (Fact Table) связана с таблицами измерений (Dimension Tables).
- Снежинка: таблицы измерений нормализованы, что уменьшает избыточность данных, но может усложнить запросы.
- Обеспечивают быстрый доступ к агрегированным данным для аналитики.
-
Материализованные представления (Materialized Views)
- Предварительно вычисленные результаты сложных запросов, хранящиеся как физические объекты.
- Ускоряют выполнение отчётов и дашбордов за счёт кэширования агрегированных данных.
-
Кубы OLAP (Online Analytical Processing Cubes)
- Многомерные структуры для интерактивного анализа данных по нескольким измерениям (время, продукт, регион и т. д.).
- Поддерживают операции: срез (slice), срез‑прокатка (dice), детализация (drill‑down), обобщение (roll‑up).
- Используются в инструментах типа Microsoft Analysis Services, IBM Cognos, Oracle OLAP.
-
Обогащённые таблицы и агрегированные данные
- Таблицы с предварительно рассчитанными метриками (ежемесячные продажи, средний чек, отток клиентов и т. п.).
- Снижают нагрузку на базу данных при выполнении типовых запросов.
-
Метаданные и бизнес‑глоссарий
- Описания бизнес‑терминов, правил расчёта KPI, источников данных.
- Обеспечивают единое понимание показателей пользователями.
-
Интерфейсы доступа
- SQL‑запросы к витринам данных.
- API для интеграции с BI‑инструментами.
- Прямое подключение BI‑систем (Tableau, Power BI, Qlik) к слою.
Где находятся отчёты?
Отчёты не хранятся непосредственно в презентационном слое DWH как самостоятельные сущности. Вместо этого:
1. Источник данных для отчётов
- Отчёты формируются на основе данных из презентационного слоя: витрин, материализованных представлений, OLAP‑кубов.
- Пример: дашборд в Power BI подключается к витрине
sales_martили кубуSales_Cube.
2. Инструменты генерации отчётов
- BI‑платформы (Power BI, Tableau, Looker, Qlik) запрашивают данные из презентационного слоя и визуализируют их.
- Пользовательские SQL‑отчёты выполняются напрямую к витринам или материализованным представлениям.
3. Кэширование и публикация отчётов
- Результаты отчётов могут кэшироваться в BI‑системе для ускорения загрузки.
- Публикуемые дашборды и отчёты хранятся в репозитории BI‑инструмента (например, Power BI Service), а не в DWH.
4. Автоматизированные отчёты
- Планировщики (SSRS, Tableau Server) запускают SQL‑запросы к презентационному слою по расписанию.
- Сформированные отчёты (PDF, Excel) рассылаются пользователям или выкладываются на портал.
Итоговая схема взаимодействия
[Сырые данные] → [Очистка/ETL] → [Ядро DWH] → [Витрины/Кубы] → [BI‑инструмент] → [Отчёт/Дашборд]
(Презентационный слой)
Кратко: презентационный слой предоставляет структурированные, агрегированные и удобные для анализа данные. Отчёты строятся поверх этого слоя через BI‑инструменты или SQL, но физически хранятся вне DWH — в системах бизнес‑аналитики или в виде файлов (PDF, Excel).