Изменения во времени — 08.04.26 09:09
Представь обычную ситуацию:
Есть клиент, сегодня он живет в Москве

В таблице это выглядит так:
| user_id | city |
| ———— | ————- |
| 1 | Москва |
Проходит время, он переезжает в Санкт-Петербург
Ты обновляешь данные
| user_id | city |
| ———— | —————————- |
| 1 | Санкт-Петербург|
И вроде всё ок.
Но потом приходит задача:
👉 А посчитай выручку по городам за прошлый год
И тут начинается самое интересное.
А в моем канале Аналитика FM выпуски про расчет Cohort Retention в разных бизнесах.
Канал я веду с нуля подписчиков, рассказываю про аналитику и разбираю различные кейсы на реальных примерах.
Подписывайся, если интересно как устроен мир аналитика!
Если ты просто возьмешь текущие данные, то все заказы пользователя «уедут » в Санкт-Петербург. Даже те, которые он делал, когда жил в Москве.
И аналитика начнёт врать.
Не потому что ты ошибся.
А потому что данные потеряли свою историю.
Вот здесь и появляется SCD
SCD (Slowly Changing Dimension) — это способ хранить изменения так,
чтобы ты мог ответить не только на вопрос:
👉 Как сейчас?
но и на более важный:
👉 Как было в момент события?
Как будет выглядеть: вместо одной строки в таблице будет:
| user_id | city | start_date | end_date |
| ———— | ————————— | —————— | ——————— |
| 1 | Москва | 2024-01-01 | 2025-01-01 |
| 1 | Санкт-Петербург| 2025-01-01 | NULL |
Теперь у нас есть не просто данные,
а контекст во времени.
Почему это важно
Потому что почти всё в бизнесе меняется:
-
клиенты переходят между сегментами
-
продукты меняют категории
-
условия договоров обновляются
-
статусы живут своей жизнью
И если ты смотришь только на «сейчас» — ты теряешь половину смысла.
Самый важный момент
SCD — это не про таблицы.
Это про мышление.
Когда ты начинаешь задавать вопросы так:
-
А на момент события это было актуально?
-
А не поменялось ли это потом?
— ты переходишь на другой уровень понимания данных.
Где чаще всего ошибаются
Берут текущие данные
и применяют их к прошлым событиям.
И получается:
-
красивые отчёты
-
аккуратные цифры
-
полностью неверные выводы
Простая мысль, которую стоит запомнить
Данные без времени — это половина правды
SCD — это как раз про то, чтобы эту вторую половину не потерять.
И если тебе интересно разбираться в таких вещах глубже —
не просто «как написать SELECT», а как думать про данные,
в Аналитика FM я как раз про это и пишу.


