Проєктування бази даних
Проєктування бази даних — це процес створення схеми бази даних і визначення необхідних обмежень цілісності.
Основні завдання проєктування баз даних
Основні завдання:
- Забезпечення зберігання в БД всієї необхідної інформації.
- Забезпечення можливості отримання даних по всім необхідним запитам.
- Скорочення надмірності і дублювання даних.
- Забезпечення цілісності бази даних.
Основні етапи проєктування баз даних
Концептуальне (інфологічне) проєктування — побудова семантичної моделі предметної області, тобто інформаційної моделі найбільш високого рівня абстракції. Така модель створюється без орієнтації на якусь конкретну СУБД і модель даних. Терміни «семантична модель», «концептуальна модель» і «інфологічна модель» є синонімами.
Конкретний вид і зміст концептуальної моделі бази даних визначається обраним для цього формальним апаратом. Зазвичай використовуються графічні нотації, подібні ER-діаграм.
Найчастіше концептуальна модель бази даних включає в себе:
- опис інформаційних об'єктів або понять предметної області та зв'язків між ними.
- опис обмежень цілісності, тобто вимог до допустимих значень даних і до зв'язків між ними.
Логічне проєктування — створення схеми бази даних на основі конкретної моделі даних, наприклад, реляційної моделі БД. Для реляційної моделі даних — це набір схем відносин, зазвичай із зазначенням первинних ключів, а також «зв'язків» між відносинами, що представляють собою зовнішні ключі.
Перетворення концептуальної моделі в логічну модель, як правило, здійснюється за формальними правилами. Цей етап може бути в значній мірі автоматизований.
На етапі логічного проєктування враховується специфіка конкретної моделі даних, але може не враховуватися специфіка конкретної СУБД.
Фізичне проєктування — створення схеми бази даних для конкретної СУБД. Специфіка конкретної СУБД може включати в себе обмеження на іменування об'єктів бази даних, обмеження на підтримувані типи даних та інші. Крім того, специфіка конкретної СУБД при фізичному проєктуванні включає вибір рішень, пов'язаних з фізичним середовищем зберігання даних (вибір методів управління дисковою пам'яттю, поділ БД по файлам і пристроям, методів доступу до даних), створення індексів та інші.
Модель «сутність — зв'язок»
Модель «сутність-зв'язок» (ER-модель) (англ. Entity-relationship model або англ. entity-relationship diagram) — модель даних, яка дозволяє описувати концептуальні схеми за допомогою узагальнених конструкцій блоків. ER-модель — це мета-модель даних, тобто засіб опису моделей даних. Існує ряд моделей для представлення знань, але одним з найзручніших інструментів уніфікованого представлення даних, незалежного від програмного забезпечення, що його реалізує, є модель «сутність-зв'язок». Важливим є той факт, що з моделі «сутність-зв'язок» можуть бути породжені всі наявні моделі даних (ієрархічна, мережева, реляційна, об'єктна), тому вона є найзагальнішою.
Основні переваги ER-моделей:
- наочність;
- моделі дозволяють проєктувати бази даних з великою кількістю об'єктів і атрибутів;
- ER-моделі реалізовані в багатьох системах автоматизованого проєктування баз даних;
Основні елементи ER-моделей:
- об'єкти (сутності);
- атрибути об'єктів;
- зв'язки між об'єктами;
Див. також
Джерела
- Кузнецов С. Д. Основы баз данных. — 2-е изд.