Моделі баз даних. Контрольні питання та завдання. Принцип побудови ієрархічної моделі

Теми:логічні моделі баз даних, ідентифікація об'єктів та записів, пошук записів.

1. Ієрархічна та мережева моделі даних.

Ядром будь-якої бази даних є модель даних. Модель даних - сукупність структур даних та операцій їх обробки. За способом встановлення зв'язків між даними розрізняють ієрархічну, мережеву та реляційну моделі.

Ієрархічна модельдозволяє будувати бази даних із деревоподібною структурою. У них кожен вузол містить свій тип даних (сутність) На верхньому рівні дерева в цій моделі є один вузол - «корінь», на наступному рівні розташовуються вузли, пов'язані з цим коренем, потім вузли, пов'язані з вузлами попереднього рівня і т.д. причому кожен вузол може мати лише одного предка (рис. 1)

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

Використання посилань для організації доступу до окремих елементів структури не дозволяє скоротити процедуру пошуку, основою якої є послідовний перебір. Процедура пошуку буде ефективнішою, якщо попередньо встановлено певний порядок переходу до наступного елемента дерева.

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

Ієрархічні моделі характерні для багатьох областей, однак у багатьох випадках окремий запис вимагає більше одного подання або пов'язаний з декількома іншими. В результаті виходять зазвичай складніші структури в порівнянні з деревоподібними. У структурі мережі будь-який елемент може бути пов'язаний з будь-яким іншим елементом. Приклади мережевих структур наведено на рис. 2

Мережеву структуруможна описати за допомогою вихідних та породжених елементів. Зручно представляти її так, щоб породжені елементи розташовувалися нижче за вихідні.

Бажано відрізняти прості та складні мережеві структури.

Якщо один інформаційний об'єкт пов'язаний із цілою сукупністю інших об'єктів або всі об'єкти пов'язані з усіма, така структура називається складною.

Наприклад, одна група студентів пов'язана з усіма студентами групи. Або у прикладі навчального закладу на рис. 3 кожен викладач може навчати багато (теоретично всіх) студентів, і кожен студент може навчатися у багатьох (теоретично всіх) викладачів. Оскільки на практиці це, звісно, ​​неможливо, доводиться вдаватися до деяких обмежень.


Деякі структури містять цикли. Циклом вважається ситуація, у якій попередник вузла є водночас його послідовником. Відносини «вихідний породжений» утворюють при цьому замкнутий контур. Наприклад, завод випускає різну продукцію. Деякі вироби виробляються інших заводах-субпідрядниках. З одним договором може бути пов'язане виробництво кількох виробів. Подання цих відносин і утворює цикл.

Іноді об'єкти пов'язані з іншими об'єктами такого самого типу. Така ситуація називається петлею. На рис. 4 наведено дві досить поширені ситуації, де можуть використовуватись петлі. У масиві службовців специфіковано зв'язки, що існують між деякими службовцями. До бази даних списку матеріалів введено додаткове ускладнення: деякі вузли самі складаються з вузлів.

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

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

2. Ідентифікація об'єктів та записів

У задачах обробки інформації атрибути іменують(позначають) та приписують їм значення.

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

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

Окремий об'єкт завжди є унікальним, тому запис, що містить дані про нього, також повинен мати унікальний ідентифікатор, причому ніякий інший об'єкт не повинен мати такий самий ідентифікатор. Оскільки ідентифікатор є значенням елемента даних, в деяких випадках для забезпечення унікальності потрібно використовувати більше одного елемента. Наприклад, для однозначної ідентифікації записів про дисципліни навчального плану необхідно використовувати елементи СЕМЕСТР і НАЗАЙН ДИСЦИПЛІНИ, оскільки можливе викладання однієї дисципліни у різних семестрах.

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

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

3. Пошук записів

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

Для цього можна використовувати такі способи:

Задати машинну адресу даних та відповідно до фізичного формату запису прочитати значення. Це випадки, коли програміст має бути «навігатором».

Повідомити системі ім'я запису або елемента даних, які він хоче отримати, і, можливо, організацію набору даних. У цьому випадку система сама зробить вибірку (за попередньою схемою), але для цього вона повинна буде використовувати допоміжну інформацію про структуру даних та організацію набору. Така інформація по суті буде надмірною щодо об'єкта, проте спілкування з базою даних не вимагатиме від користувача знань програміста.

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

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

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

При цьому ключ може зберігатись у складі запису або окремо. Наприклад, ключ для записів, що мають неунікальні значення атрибутів, для усунення надмірності доцільно зберігати окремо.

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

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

Загалом інвертований список може бути побудований для будь-якого ключа, у тому числі складового.

У тих завдань пошуку можна сказати, що є два основних способу організації даних: Перший спосіб представляє пряму організацію масиву, другий — є інверсією першого. Пряма організація масиву зручна для пошуку за умовою «Які властивості зазначеного об'єкта?», а інвертована — для пошуку за умовою «Які об'єкти мають зазначену властивість?».

Лекція 5

Бази даних інформаційних систем

База даних. Класифікація та характеристика СУБД.

Основні моделі бази даних.

Бази даних в економічних системах

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

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

Завданнями СУБД є:

Зберігання інформації у структурованому вигляді;

Оновлення інформації в міру потреби;

Пошук необхідної інформації за певними критеріями;

Видача інформації користувачеві у зручному для нього вигляді;

Усунення надмірності даних;

Підтримка мов БД.

p align="justify"> Для роботи з базами даних використовуються спеціальні мови, в цілому звані мовами баз даних. У сучасних СУБД зазвичай підтримується єдина інтегрована мова, що містить всі необхідні засоби для роботи з БД, починаючи від її створення, і забезпечує базовий інтерфейс користувача з базами даних.



За технологією роботи з базами даних існують:

Централізовані СУБД;

Розподілені СУБД.

Централізована СУБД- Система управління базою даних, що зберігається у пам'яті однієї обчислювальної системи.

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

¾ архітектура файл-серверпередбачає виділення однієї з машин мережі як центральної (головний сервер файлів), де зберігається спільно використовувана централізована база даних. Усі інші машини мережі виконують роль робочих станцій. Файли бази даних відповідно до запитів користувача передаються на робочі станції, де в основному і проводиться їх обробка. При великій інтенсивності доступу до тих самих даних продуктивність інформаційної системи падає;

¾ архітектура клієнт-сервер. Кожен із підключених до мережі і складових цю архітектуру комп'ютерів грає роль: сервер володіє і розпоряджається інформаційними ресурсами системи, клієнт має можливість ними.

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

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

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

Безпека даних у базі даних досягається:

¾ шифруванням прикладних програм;

¾ шифруванням даних;

¾ захистом даних паролем;

¾ обмеженням доступу до бази даних.

Основні моделі баз даних

Основна відмінність між моделями баз даних полягає в характері опису взаємозв'язку та взаємодії між об'єктами та атрибутами бази даних. Зв'язки об'єктів можуть бути наступними типами:

¾ "один до одного";

¾ "один до багатьох";

¾ "багато хто до багатьох".

"Один до одного"- це взаємно однозначна відповідність, яка встановлюється між одним об'єктом та одним атрибутом. Зв'язок "один-до-одному" визначає таке відношення між таблицями, коли кожному запису в підпорядкованій таблиці відповідає лише один запис у головній таблиці. Наявність зв'язків між таблицями "один-до-одному" зазвичай не говорить про хорошу структуру бази даних, оскільки свідчить про те, що дві таблиці мають поля, що повністю збігаються, а це веде до нераціональної витрати дискового простору.

Зв'язок "один-до-багатьом"у структурах баз даних є загальноприйнятою. При цьому типі зв'язку кожного запису головної таблиці відповідає один або кілька записів підпорядкованої таблиці. Структура зв'язків типу "один-багатьом" дозволяє уникнути надмірності даних та дублювання записів.

Зв'язок типу "багато хто до багатьох"виражає таке відношення між таблицями, коли багато записів однієї таблиці можуть бути пов'язані з багатьма записами іншої таблиці.

Ієрархічна модель баз даних (ІМД) заснована на графічному способі та передбачає пошук даних по одній з гілок «дерева», в якому кожна вершина має лише один зв'язок з вершиною вищого рівня. Для пошуку необхідно вказати повний шлях до даних, починаючи з кореневого елемента.

Мал. 1 – Ієрархічна модель баз даних

Мережева модель баз даних (СМД) також заснована на графічному способі, але допускає ускладнення «дерева» без обмеження кількості зв'язків, що входять до вершини. Це дозволяє будувати складні пошукові структури.

Мал. 2 – Мережева модель баз даних

Реляційна модель баз даних (РМД) реалізує табличний метод.

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

Відносини мають такі властивостями:

¾ кожен елемент таблиці є одним елементом даних (повторювані групи відсутні);

¾ елементи стовпця мають однакову природу, і стовпцям однозначно надано імена;

¾ у таблиці немає двох однакових рядків;

¾ рядки та стовпці можуть переглядатися у будь-якому порядку незалежно від їх інформаційного змісту.

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

Переваги реляційної моделі:

¾ простота побудови;

¾ доступність розуміння;

¾ можливість експлуатації бази даних без знання методів та способів її побудови;

¾ незалежність даних;

¾ гнучкість структури та ін.

Недоліки реляційної моделі:

¾ низька продуктивність порівняно з ієрархічною та мережевою моделлю;

¾ складність програмного забезпечення;

¾ надмірність елементів.

В останні роки все більше визнання та розвиток отримують об'єктні бази даних(ОБД), поява яких зумовлена ​​розвитком об'єктно-орієнтованого програмування.

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

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

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

Подія- це дія, яка пов'язана з об'єктом. Подія може бути викликана користувачем (клацання мишею), ініційована прикладною програмою або операційною системою.

Метод- це функція чи процедура, керуюча роботою об'єкта за його реакцію подію.

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

Класифікація моделей даних виходить з поняттях про взаємозв'язку об'єктів. Між таблицями базами даних можуть існувати чотири типи різних зв'язків: один до одного; "один до багатьох"; «багато хто до багатьох».

При відношенні "один до одного » у кожний час одного запису таблиці «1» відповідає трохи більше однієї записи таблиці «2». Наприклад, одному клієнту відповідає лише один номер у готелі. Цей тип зв'язку використовують не дуже часто, оскільки такі дані можуть бути розміщені в одну таблицю. Такий зв'язок використовують для розподілу дуже широких таблиць, наприклад, для розподілу таблиці з інформацією про співробітників фірми на дві – службовою та особистою інформацією.

Зв'язок із ставленням « один до багатьох» характеризує те, що одному екземпляру інформаційного об'єкта «1» відповідає 0,1,2 і більше екземплярів об'єкта «2». Таке ставлення існує, наприклад, між таблицями «Постачальники» та «Товари», тобто. кожен постачальник може продавати різні товари, але кожен товар є єдиний постачальник.

Відношення « багато хто до багатьох» передбачає, що у кожен час однієї записи таблиці «1» відповідає кілька примірників таблиці «2» і навпаки. Прикладом може бути зв'язок між інформаційними об'єктами «Клієнт» та «Банк». Один клієнт зберігає гроші у багатьох банках. Один банк обслуговує багатьох клієнтів. Реалізується відношення за допомогою третьої (сполучної) таблиці, ключ якої складається принаймні з двох полів, які є полями зовнішнього ключа у вихідних таблицях.

Відомі три основні типи моделей даних.

Ієрархічна модель.Передбачає організацію даних як деревоподібної структури. Дерево є ієрархією елементів. На верхньому рівні структури знаходиться корінь дерева. В одного дерева може бути лише один корінь, інші - вузли, які називаються породженими. Кожен вузол має вихідний, що знаходиться вище за нього.

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

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

Мережева модель. В основу моделі покладено мережеві структури, в яких будь-який елемент може бути пов'язаний з будь-яким іншим елементом. Інформаційними конструкціями моделі є відносини і віялові відносини. Останні поділяють на основні та залежні. Віяловим ставленням W(R,S)називається пара відносин Rі Sі зв'язок між ними за умови, що кожне значення Sпов'язане з єдиним значенням R. Ставлення Rназивають вихідним (основним), а S- Породженим (залежним).

У структуру основного та залежного відносин вводиться додатковий атрибут, званий адресою зв'язку, який забезпечує відповідність кожного значення залежного відношення Sз єдиним значенням основного відношення R. Адреса зв'язку зберігає початкову адресу або номер наступного запису, що обробляється. Кільцева структура адрес зв'язку називається віялом. Роль "ручки" віяла відіграє запис основного відношення.

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

Реляційна модель.В основі структури даних цієї моделі лежить апарат реляційної алгебри та теорії нормалізації. Модель передбачає використання двовимірних таблиць (стосунків).

Обмеження на відносини реляційної моделі : кожен елемент таблиці є простим елементом даних; у таблиці немає однакових рядків; стовпцям (полям) присвоєно унікальні імена; всі рядки таблиці мають ту саму структуру; у таблиці порядок рядків та стовпців довільний.

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

Види моделей даних БД

Моделі для організації даних. Мережеві, реляційні, ієрархічні моделі.

Ядром будь-якої бази даних є модель даних. За допомогою моделі даних можуть бути представлені об'єкти предметної галузі та взаємозв'язки між ними.

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

Види моделей даних БД

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

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

До основних понять ієрархічної структури відносяться рівень, вузол та зв'язок. Вузол- це сукупність атрибутів даних, що описують певний об'єкт. На схемі ієрархічного дерева вузли є вершинами графа. Кожен вузол на нижчому рівні пов'язаний тільки з одним вузлом, що знаходиться на вищому рівні. Ієрархічне дерево має тільки одну вершину, не підпорядковану жодній іншій вершині і що знаходиться на верхньому - першому рівні. Залежні (підлеглі) вузли перебувають у другому, третьому тощо. буд. рівнях. Кількість дерев у базі даних визначається кількістю кореневих записів. До кожного запису бази даних існує лише один ієрархічний шлях від кореневого запису.

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

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

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

Реляційна модельданих об'єкти та зв'язку між ними представляє у вигляді таблиць, при цьому зв'язки теж розглядаються як об'єкти. Усі рядки, що становлять таблицю в реляційній базі даних, повинні мати первинний ключ. Усі сучасні засоби СУБД підтримують реляційну модель даних.

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

Кожна реляційна таблиця є двовимірним масивом і має наступні властивості:

1. Кожен елемент таблиці відповідає одному елементу даних.

2. Усі стовпці у таблиці однорідні, тобто. всі елементи у стовпці мають однаковий тип та довжину.

3. Кожен стовпець має унікальне ім'я.

4. Однакові рядки в таблиці відсутні;

5. Порядок прямування рядків та стовпців може бути довільним.

Класифікація за моделлю даних (за структурою організації).

Історія.

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

У широкому аспектіпоняття історії баз даних узагальнюється до історії будь-яких засобів, за допомогою яких людство зберігало та обробляло дані. У такому контексті згадуються, наприклад, кошти обліку царської скарбниці та податків у стародавньому Шумері (4000 р. до н.е.), вузликова писемність інків, клинописи, що містять документи царя Ассірії і т.п. Слід пам'ятати, що недоліком цього підходу є розмивання поняття бази даних і фактичне його злиття з поняттями архів і навіть писемність.

Історія баз даних у вузькому аспектірозглядає бази даних у традиційному (сучасному) розумінні. Ця історія починається з 1955 року, коли з'явилося програмоване обладнання для обробки записів. Програмне забезпечення цього часу підтримувало модель обробки записів з урахуванням файлів. Для зберігання даних використовувалися перфокарти. Оперативні бази даних з'явилися в середині 1960-х. Операції над оперативними базами даних оброблялися інтерактивному режимі з допомогою терміналів. Прості індексно-послідовні організації записів швидко розвинулися більш потужної моделі записів, орієнтованої на набори. За керівництво роботою Data Base Task Group (DBTG), яка розробила стандартну мову опису даних та маніпулювання даними, Чарльз Бахман отримав Т'юрінгівську премію.

У той же час у співтоваристві баз даних COBOL (одна з найстаріших мов програмування (перша версія в 1959), призначена в першу чергу для розробки бізнес-додатків) була опрацьована концепція схем баз даних та концепція незалежності даних.

Наступний важливий етап пов'язаний з появою на початку 1970-х реляційної моделі даних завдяки роботам Едгара Ф. Кодда. Роботи Кодда відкрили шлях до тісного зв'язку прикладної технології баз даних з математикою та логікою. За свій внесок у теорію та практику Едгар Ф. Кодд також отримав премію Т'юрінга.

Сам термін database(База даних) з'явився на початку 1960-х років, і був введений у вжиток на симпозіумах, організованих фірмою SDC (System Development Corporation) в 1964 і 1965 роках, хоча розумівся спочатку в досить вузькому значенні, в контексті систем штучного інтелекту. У широке вживання у сучасному розумінні термін увійшов лише 1970-ті роки.

Основні класифікації БД.

Працюючи з БД СУБД підтримує у пам'яті комп'ютера деяку модель предметної області, звану моделлю даних.Модель даних визначається типом СУБД.



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

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

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

Реляційна модель. Реляційна база даних- база даних, що базується на реляційній моделі даних. Була розроблена Коддом у 1969-70 роки на основі математичної теорії відносин та спирається на систему понять, найважливішими з яких є таблиця , ставлення , поле , запис . Ця модель здобула найбільше визнання. Слово "реляційна" походить від англійського "relation", що означає відношення. Відносини зручно представляти як таблиць. Тобто. як неформальний синонім терміну «відношення» часто зустрічається слово таблиця. Необхідно пам'ятати, що «таблиця» є поняття не суворе та неформальне і часто означає не «ставлення» як абстрактне поняття, а візуальне уявлення відношення на папері чи екрані. Некоректне та не суворе використання терміна «таблиця» замість терміна «ставлення» нерідко призводить до непорозуміння. Найчастіша помилка полягає у міркуваннях про те, що РМД має справу з «плоськими», або «двовимірними» таблицями, тоді як такими можуть бути лише візуальні уявлення таблиць. Відносини є абстракціями, і не можуть бути ні «плоськими», ні «неплоськими»

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

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

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

Об'єктно-реляційна- Реляційна СУБД (РСУБД), яка підтримує деякі технології, що реалізують об'єктно-орієнтований підхід.