Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_информсистемы_Назаров_11_02_2016.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

2. Бази даних

2.1. Інформаційні моделі даних

База даних (БД) – це організована відповідно до певних правил і підтримувана в пам'яті комп'ютера сукупність даних, що характеризує актуальний стан деякої предметної області і використовується для задоволення інформаційних потреб користувачів.

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

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

Існує досить велика кількість програм, які призначені для організації інформації, її утримання і маніпуляцій з нею – комплекси таких програм отримали назву системи керування базами даних (СКБД).

Дані в БД повинні мати визначену структуру. Сукупність правил побудови структур даних у БД та операцій із ними називається інформаційною моделлю даних.

Останнім часом в більшості БД використовуються реляційні моделі даних, однак спочатку коротко розглянемо решту основних інформаційних моделей даних.

2.2. Ієрархічна модель даних

Ієрархічна модель передбачає організацію даних у вигляді дерева (графа без циклів):

Рис.2. Структура ієрархічної моделі даних

Структура моделі, яка має вузли та листя, зв’язані між собою дугами, складається з впорядкованого набору піддерев. Кожне дерево складене з одного кореневого вузла (предка) та впорядкованого набора зв’язаних з ним піддерев (нащадків).

Основними поняттями моделі є об’єкти, що складаються з атрибутів, які є об’єктами нижчого рівня ієрархії та ієрархічні відношення (зв’язки) між ними.

Приклад:

Рис. 3. Приклад ієрархічної моделі даних

Основними недоліками моделі є

  1. неможливість відображувати зв’язки між об’єктами одного рівня ієрархії (пунктирна лінія),

  2. неможливість відображувати зв’язки між об’єктами, які не знаходяться на сусідніх рівнях ієрархії (штрих-пунктирна лінія),

  3. неможливість підпорядкування об’єкта різним об’єктам вищого рівня ієрархії (штрихова лінія).

2.3. Мережева модель даних

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

Наприклад:

Рис. 4. Мережева модель даних.

Структура моделі має вершини, поділені на дві групи; вершини, які належать до різних груп, зв’язані між собою дугами.

На рисунку 4 графічно зображені дані про студентів та викладачів і зв’язки між ними у вигляді графа, що складається з вершин і дуг.

Кожний викладач навчає хоча б одного студента.

Кожний студент навчається більш ніж в одного викладача.

Вершини: V1 V2 V3 … Vn

Дуги: e1 e2 e3 … em

Основними поняттями моделі є об’єкти, які поділені на групи, та зв’язки між об’єктами, що належать до різних груп.

Основним недоліком моделі є неможливість відображення зв’язків між об’єктами, які належать до однієї групи (штрихова лінія).

Мережева модель відрізняється від ієрархічної тим, що припускає використання циклів.

2.4. Реляційна модель даних

Реляційна модель – це найбільш поширена модель даних, в якій дані і зв’язки між ними організовані у вигляді таблиць. В її основі лежить математичне поняття «відношення» (relation).

Відношення являє собою підмножину декартового добутку доменів.

Домен (domain) означає множину всіх значень деякого елемента даних про інформаційний об’єкт.

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

Доменом значущих цифр інвентарного № вагона є множина значень – {0000001 – 9999999}.

Для відмітки про ролики доменом є множина – {0, 1}.

Доменом назви залізниці України є множина значень – {Донецька, Львівська, Одеська, Південна, Південно-західна, Придніпровська}.

Декартовим добутком k доменів D1,D2,..,Dk є множина всіх кортежів виду (V1,V2,..,Vk) довжиною k, таких що V1D1, V2D2,…,VkDk.

Кортеж – це послідовність елементів.

Наприклад: визначимо декартовий добуток трьох доменів D1, D2 і D3, де D1={0, 1}, D2={a, b, c}, D3={x, z}. Декартовим добутком D1*D2*D3 є множина всіх кортежів, що складені з 3-х елементів по 1-му з кожного домену.

Відношення R на множинах D1,D2,…,Dk являє собою підмножину декартового добутку доменів D1*D2*…*Dk. Елементами відношення є кортежі довжиною k.

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

Наприклад: візьмемо рядки 2, 5, 11: - Відношення А на множинах D1,D2,…,Dk.

В реляційних моделях даних відношення представляється як правило у вигляді таблиці, в якій рядок називається кортежем, стовпчик – атрибутом.

Тобто в роботі із реляційними моделями даних використовують паралельно наступні поняття:

Таблиця 1

Проектування

Користування

Програмування

відношення

таблиця

файл

кортеж

рядок

запис

атрибут

стовпчик

поле запису

При опрацюванні даних на ЕОМ переважно використовуються поняття: файл, запис, поле.

Приклад: побудуємо відношення (таблицю даних) НАВАНТАЖЕННЯ, де

об’єкт: навантажений вагон;

атрибути: № вагона (множина 8-розрядних цілих чисел з домену D1);

рід вагона{пв, кр, пл, цс, пр}(множина двосимвольних слів з домену D2);

найменування вантажу (множина найменувань вантажу з домену D3);

маса (множина 3-розрядних цілих чисел з домену D4).