Основи реляційних моделей баз даних
Найпоширенішим підходом є реляційна модель, де дані організовано у вигляді таблиць. Кожна таблиця представляє сутність (наприклад, ‘Клієнти’, ‘Продукти’) з рядками, що відповідають окремим інстанціям, та стовпцями, які визначають атрибути (наприклад, ‘ID Клієнта’, ‘Назва Продукту’). Зв’язки між цими сутностями встановлюються за допомогою ключів.
Первинний ключ унікально ідентифікує кожен рядок у таблиці, забезпечуючи цілісність даних. Вторинні ключі пов’язують таблиці між собою, посилаючись на первинний ключ іншої таблиці, встановлюючи зв’язки типу один-до-одного, один-до-багатьох або багато-до-багатьох.
Нормалізація
Нормалізація – це процес, який має на меті зменшити дублювання даних та підвищити цілісність бази даних. Він полягає у впорядкуванні даних у таблицях на основі залежностей між атрибутами.
Загальні нормальні форми (1НФ, 2НФ, 3НФ) представляють зростаючий рівень нормалізації. Досягнення 3НФ мінімізує дублювання даних, зберігаючи при цьому ефективність запитів.
3NF: Eliminates transitive dependencies – A -> B -> C implies A -> (B union C)
Типи даних та обмеження
Вибір відповідних типів даних є ключовим для ефективного зберігання та точного представлення інформації. Прикладами є цілі числа, числа з плаваючою комою, рядки, дати та булеві значення.
Обмеження забезпечують правила щодо даних у таблиці, такі як вимога до унікальності значень (UNIQUE), заборона порожніх значень (NOT NULL) або валідація діапазону значень.
Індексація для продуктивності
Індекси – це спеціальні таблиці пошуку, які пришвидшують операції отримання даних. Вони покращують продуктивність запитів, дозволяючи базі даних швидко знаходити конкретні рядки на основі індексованих стовпців.
Однак, індекси також споживають місце для зберігання та можуть уповільнювати операції запису (вставки, оновлення, видалення). Стратегічне проєктування індексів є ключем до успіху.
Index Lookup: Database uses index to find row location; then retrieves data from that location.
Часті запитання
Яка різниця між первинним ключем і зовнішнім ключем?
Первинний ключ унікально ідентифікує рядки в таблиці. Зовнішній ключ пов'язує таблиці, посилаючись на первинний ключ іншої таблиці.
Чому нормалізація важлива?
Нормалізація зменшує дублювання даних, покращує цілісність даних та спрощує оновлення бази даних.
Як визначити, які стовпці індексувати?
Індексуйте часто запитувані стовпці – ті, що використовуються в умовах WHERE або умовах JOIN.
Спробуйте наживо
Усе, що вище, працює прямо у вашому браузері — відкрийте SPH Fluid і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.
▶ Відкрити симуляцію SPH Fluid