Проектування баз даних
8


мовою (закриті системи).

У відкритих системах мовним засобом спілкування з БД є якась одна з мов програмування, наприклад С, Паскаль. У таких системах для спілкування з БД потрібен посередник, тобто програміст, який володіє об­раною мовою програмування.

Закриті системи мають власну мову спілкування; вона, як правило, на­багато простіша за мову програмування. Тому в таких системах не потрібен посередник-програміст для спілкування з БД. Самі користувачі, що мають відповідну підготовку, зможуть працювати з БД.

1.6. ЕТАПИ ПРОЕКТУВАННЯ БАЗ ДАНИХ

Створення та впровадження в практику сучасних інформаційних систем АБД висуває нові задачі проектування, які неможливо розв'язувати традиційними прийомами та методами. Велику увагу і значення необхідно приділяти питанням проектування баз даних як одній із основних складо­вих елементів АБД. Від того, наскільки успішно буде спроектовано базу даних, залежить ефективність функціонування системи в цілому, її життєздатність і можливість розширення й подальшого розвитку. Тому пи­тання проектування баз даних виділяються як окремий, самостійний напря­мок робіт при розробці інформаційних систем.

Проектування баз даних — це ітераційний, багатоетапний процес прийняття обгрунтованих рішень у процесі аналізу інформаційної моделі предметної області, вимог до даних з боку прикладних програмістів і користувачів, синтезу логічних і фізичних структур даних, аналізу та обг­рунтування вибору програмних і апаратних засобів. Етапність проектуван­ня даних пов'язана з багаторівневою організацією даних. Розглядаючи пи­тання проектування баз даних, будемо дотримуватися такого багаторівневого подання даних: зовнішнього, інфологічного, логічного (даталогічного), внутрішнього.

Таке подання рівнів даних не єдине. Є інші варіанти багаторівневого подання даних. Так, згідно з пропозиціями дослідницької групи по систе­мах управління даними Американського національного інституту стан­дартів ANS1/X3/SPARC, а також КОДАСИЛ (Conference on Data: Systems Languages), як правило, виділяється три рівні подання даних: зовнішній (з точки зору кінцевого користувача і прикладного програміста), концепту­альний (з точки зору СУБД), внутрішній (з точки зору системного програміста). Згідно з цією концепцією зовнішній рівень є частина(підмно-жина) концептуальної моделі, необхідна для реалізації якогось запиту чи прикладної програми. Тобто, якщо концептуальна модель виступає як схе­ма, підтримувана конктретною СУБД, то зовнішній рівень — це деяка сукупність підсхем, необхідних для реалізації конкретної прикладної прог­рами чи запиту користувача.

Проте існує також інша точка зору, згідно з якою під зовнішнім рівнем розуміють більш загальні поняття, пов'язані з вивченням і аналізом інформаційних потоків предметної області та їх структуризацією. Деякі ав­тори вводять допоміжний рівень (проміжний між зовнішнім і даталогічним), який називається інфологічним [б]. Він може виступати як самос­тійний або бути складовою частиною зовнішнього рівня. Така концепція більш доцільніша з точки зору розуміння процесу проектування БД.

Тому будемо розглядати інфологічний рівень як самостійний рівень подання даних. Зовнішній рівень у цьому разі виступає як окремий етап проектування, на якому вивчається все позамашинне інформаційне забез­печення, тобто форми документування та подання даних, а також зовнішнє середовище, в якому функціонуватиме банк даних з точки зору методів фіксації, збирання та передавання інформації в базу даних.

При проектуванні БД на зовнішньому рівні необхідно вивчити функціонування об'єкта управління, для якого проектується БД, усю пер­винну та вихідну документацію з точки зору визначення того, які саме дані необхідно зберігати в базі даних. Зовнішній рівень є, як правило, словесним описом вхідних і вихідних повідомлень, а також даних, які доцільно зберігати в БД. Опис .зовнішнього рівня не виключає наявності елементів дублювання, надлишковості та неузгодженості даних. Тому для усунення цих аномалій і протиріч зовнішнього опису даних виконується інфологічне проектування. Інфологічна модель є засобом структуризації предметної області й розуміння концепції семантики даних. Інфологічну модель можна розглядати в основному як засіб документування та структурованої форми подання інформаційних потреб, що забезпечує несуперечливе спілкування користувачів і розробників системи.

Усі зовнішні подання інтегруються на інфологічному рівні, де форму­ється Інфологічна (канонічна) модель даних, яка не є простою сумою зовнішніх подань даних.

Інфологічний рівень являє собою інформаційно-логічну модель (ІЛМ) предметної області, в якій виключено надлишковість даних і відображено інформаційні особливості об'єкта управління без урахування особливос­тей і специфіки конкретної СУБД. Тобто інфологічне подання даних орієнтоване переважно на людину, яка проектує чи використовує базу да­них.

Логічний (концептуальний) рівень побудований з урахуванням специфіки і особливостей конкретної СУБД. Цей рівень подання даних орієнтований більше на комп'ютерну обробку і на програмістів, які зай­маються її розробкою. На цьому рівні формується концептуальна модель даних, тобто спеціальним способом структурована модель ПО, яка відповідає особливостям і обмеженням вибраної СУБД. Модель логічного рівня, підтримувану засобами конкретної СУБД, називають іще даталогічною.

Інфологічна та даталогічна моделі, які відображують модель однієї предметної області, залежні між собою. Інфологічна модель має легко трансформуватися в даталогічну модель.

Внутрішній рівень пов'язаний з фізичним розміщенням даних у пам'яті ЕОМ. На цьому рівні формується фізична модель БД, яка вміщує структури зберігання даних у пам'яті ЕОМ, включаючи опис форматів записів, поря­док їх логічного або фізичного впорядкування, розміщення за типами прис­троїв, а також характеристики і шляхи доступу до даних.

Від параметрів фізичної моделі залежать такі характеристики функціонування БД: обсяг пам'яті й час реакції