DWH: Го Разберем подходы к построению хранилищ данных
Хранилище Данных (DWH) — это сердце аналитики компании. От его структуры зависит, насколько быстро и удобно можно извлекать инсайты.
Сегодня что-то расскажу про два популярных подхода к моделированию данных: снежинку (Star/Snowflake Schema) и якорную модель (Anchor Modeling).
1. Снежинка (Star/Snowflake Schema) Состоит из: 1.1 Таблицы фактов (где количественные данные, которые нужно анализировать: например фактические продажи).
1.2 Таблицы измерений (содержат описательные атрибуты, которые помогают понять контекст: продукты, кастомеры, даты).
Хинт для детектирования Если видим в названии fct — это таблица фактов, dim (dimensional) — таблица измерений, но так будет не везде(
Поинт про преимущества
- хорошо отражает сложные иерархии
- простая и понятная структура данных
2. Якорная модель (Anchor Modeling) Более гибкий подход, особенно полезный для часто меняющихся данных и состоит из:
2.1 Якоря (Anchors) — сущности (например у нас "Заказ", "Клиент").
2.2 Атрибуты (Attributes) — свойства якорей (например у нас атрибуты заказа, или "Имя клиента", "Дата заказа").
2.3 Связи (Ties) — отношения между якорями (например у нас "Заказ имеет Статус" с историей изменений).
2.4 Узлы (Knots) — хранят фиксированные наборы значений (например у нас справочник статусов заказа).
Хинт для детектирования Если видим в названии anc, attr, tie, knot — это про якорную модель
Кстати пока работал в озоне у них была реализована именно эта модель - было удобно и круто)
Поинт про преимущества
- Легко масштабируется.
- Поддерживает историчность данных без лишних костылей.
- Удобна для медленно меняющихся измерений (SCD).
Саммари Снежинка - про простоту и скорость. Якорная модель - про часто меняющиеся данные + если важна гибкость.
Спрашивается и зачем я решил пост-то накатить? Потому что уже на позициях типо джуна-миддла и выше в бигтехах могут спрашивать на собесах инфу о том, с чем работал в целом, что знаешь о подходах и их различиях. А еще круче знать о них заранее. Как минимум что они существуют и как называются, а как максимум понимать принципы и вернеуровневое устройство.