Data modeling починається з кінця ⏪
Моя помилка, коли я був джуном і моделював дані для аналітики — я починав із SQL.
Виглядає продуктивно: код пишеться, таблиці зʼявляються, ніби є прогрес.
Але часто це закінчується кривою структурою або глухим кутом. Бо моделювання треба будувати у зворотному напрямку.
Є три рівні: conceptual → logical → physical. І працюють вони саме в такому порядку.
1️⃣ Conceptual — визначаємо фінальну картину
Тут без коду. Ви описуєте:
• бізнес-сутності
• метрики
• виміри
• звʼязки
Зазвичай це whiteboard і розмова з бізнесом. І головне — не думати, чи є у вас ці дані. Уявіть ідеальний стан. Що ви хочете бачити? Які рішення приймати? Обмеження — це вже наступний крок.
2️⃣ Logical — надаємо форму
Коду все ще немає, але зʼявляється структура. Тут допомагають Event (bus) matrix та ERD діаграми.
Event matrix показує процеси та виміри — і дає розуміння пріоритетів. ERD допомагає визначити fact/dimension таблиці, grain, ключі та знайти дірки в даних.
3️⃣ Physical — тепер можна писати SQL
Тільки зараз — SQL або dbt. Але ви вже:
• розумієте бізнес-контекст
• знаєте обмеження
• бачите use cases
Тому цей етап стає майже механічним: код, тести, документація.
💥 І от тоді ви реально будуєте дата моделі, а не просто “пишете SQL”.

LinkedIn
Data Modeling Starts from the End: Conceptual, Logical, and Physical Layers | Oleg Agapov posted on the topic | LinkedIn
Data modeling starts from the end ⏪
One mistake I made as a junior data analyst when modeling data for analytics is starting with SQL. While this approach gives a sense of progress and fast results, it can eventually lead to an incorrect structure or even…
20
5
3March 3, 2026 771 4 20