Login Sign Up
Advert
Your ad spot
Reserve this exclusive slot for the selected period.
Buy advertising →
Telegram community logo - IASAedu 🇺🇦
Added 14 Jul 2024 🌐 UK

IASAedu 🇺🇦

@iasa_edu
Number of subscribers: 1 000
Photos: 19
Links: 597
Description:
Освітній проєкт для початківців у ІТ від @IASA_Student_Council Зворотний зв'язок: @IASAsuggestionBot Проблеми з навчанням: @iasa_stud_support_bot #Edu_recommends #Edu_professions #Edu_preparation #Edu_quiz #Edu_Academic #Edu_internship #IASA_stars
Source

IASAedu 🇺🇦 | Junior Data Engineer interview: Star Schema vs Snowflake Schema#Edu_pr...

Telegram community logo - IASAedu 🇺🇦 IASAedu 🇺🇦 @iasa_edu
232 Views/Reach 2026-10-15 07:03 Message №1213
Junior Data Engineer interview: Star Schema vs Snowflake Schema
#Edu_preparation

Що таке схема "Зірка" (Star Schema) та чим вона відрізняється від "Сніжинки" (Snowflake Schema)?

Схема "Зірка" та схема "Сніжинка" — це два основні підходи до багатовимірного моделювання даних в аналітичних сховищах (Data Warehouses). Обидві архітектури будуються навколо центральної таблиці фактів (Fact Table), яка зберігає кількісні метрики бізнес-подій, та пов'язаних із нею таблиць вимірів (Dimension Tables), що надають контекст цим подіям (хто, що, де, коли). Головна відмінність між ними полягає у підході до організації та нормалізації таблиць вимірів.

Відмінності базуються на таких ключових аспектах:

• Нормалізація даних (Data Normalization):
У схемі "Зірка" таблиці вимірів залишаються денормалізованими. Уся інформація про вимір зберігається в одній "плоскій" таблиці, що призводить до дублювання даних (наприклад, назва країни повторюється для кожного міста). У "Сніжинці" таблиці вимірів нормалізовані: вони розбиваються на ієрархічні підтаблиці, що повністю усуває надлишковість збереження інформації.

• Складність запитів (Query Complexity):
"Зірка" має максимально просту і зрозумілу структуру. Для аналізу даних зазвичай потрібен лише один рівень з'єднань (JOINs) між фактами та вимірами. У "Сніжинці" структура розгалужена, тому для збору повного контексту необхідно прописувати складні запити з великою кількістю JOIN-ів між різними рівнями підтаблиць.

• Продуктивність та швидкість читання (Query Performance):
Оскільки аналітичні бази даних оптимізовані для швидкого читання великих обсягів інформації, "Зірка" є стандартом де-факто. Завдяки мінімальній кількості JOIN-ів вона забезпечує найвищу швидкість виконання запитів. "Сніжинка" працює повільніше, оскільки рушію бази даних потрібно витрачати час на об'єднання багатьох таблиць.

• Використання пам'яті та оновлення (Storage & Maintenance):
Денормалізована схема "Зірка" потребує більше дискового простору через дублювання інформації, і її важче оновлювати (при зміні назви категорії потрібно оновлювати всі відповідні рядки). Схема "Сніжинка" суттєво економить пам'ять завдяки нормалізації та робить процеси оновлення даних (UPDATE) більш швидкими й безпечними.