Бази даних. Моделі даних. Поняття бази даних. Моделі бази даних (ієрархічна, мережева та реляційна). Проектування баз даних. Модель “об’єкт-атрибут-зв’язок”. Опрацювання відношень.
Моделі даних.
Великі обсяги інформації практично неможливо опрацювати без спеціальних засобів машинної обробки. Останнім часом широкого поширення набули автоматизовані інформаційні системи: інформаційно-довідкові, інформаційно-пошукові, інформаційно-логічні і т. ін. Всі вони призначені для реєстрації, зберігання і опрацювання даних з метою пошуку і видачі відповідей на запити користувачів. У більшості випадків автоматизовані інформаційні системи розробляють як банки даних. Банки даних — один з основних компонентів автоматизованих систем різних типів і рівнів, їх створюють для багатьох галузей і сфер суспільного життя: планування, обліку, управління, статистики, охорони здоров'я та ін.
Поняття інформації вважають основним, неозначуваним поняттям, її часто тлумачать як одну зі сторін відображення навколишньої дійсності організмом чи цілою системою.
Дані — це інформація, зафіксована (закодована) у певній формі, придатній для подальшої обробки, зберігання і використання.
В процесі розробки автоматизованих інформаційних систем відповідно до двох понять — «інформація» і «дані» — в автоматизованих інформаційних системах розрізняють два аспекти: інфологічний і датологічний.
Інфологічний аспект стосується питань,.пов'язаних зі смисловим змістом даних незалежно від способів їх подання у пам'яті системи, датологічний — питань подання даних у пам'яті інформаційної системи.
На етапі інфологічного проектування системи вирішують такі завдання:
— визначають об'єкти і явища реального світу, інформація про які має бути накопичувана й опрацьовувана в системі;
— визначають суттєві характеристики і взаємозв'язки цих об'єктів та явищ;
— уточнюють вищевказану інформацію для введення в інформаційну систему.
На етапі датологічного проектування системи вирішують такі завдання:
— розробляють форми подання інформації, що відповідають наявним засобам сприйняття й обробки;
— наводять моделі і методи подання та перетворення даних;
Поняття бази даних.
Банк даних — сукупність спеціальних методів і засобів (математичних, інформаційних, програмних, мовних, організаційних та технічних) для підтримки динамічної інформаційної моделі предметної галузі з метою забезпечення інформаційних запитів користувачів.
Банк даних містить два основних компоненти: базу даних (БД) і систему управління базами даних (СУБД).
Базою даних називають сукупність взаємопов'язаних даних деякої предметної галузі, що зберігаються в пам'яті ЕОМ та організовані так, що їх можна використовувати для розв'язування багатьох задач різними користувачами.
БД — датологічне подання інформаційної моделі предметної галузі.
БД розробляють таким чином, щоб існувала можливість формулювати запит і отримувати потрібну інформацію без трудомісткого написання програм.
Системою управління базами даних називають сукупність програм і мовних засобів, за допомогою яких реалізується централізоване управління даними в базі, доступ до них і забезпечується взаємодія бази з прикладними програмами.
У кожній СУБД, перш за все, є транслятори або інтерпретатори з мови опису даних (МОД) і мови маніпулювання даними (ММД).
Мова опису даних — непроцедурна мова високого рівня, призначена для опису вмісту і структури бази даних або її частини. За допомогою МОД виконують опис типів даних, які підлягають збереженню у базі або вибірці з бази, їх структур і взаємозв'язків.
Мова маніпулювання даними (або мова запитів до БД) — засіб, який застосовують користувачі або прикладні програмісти для виконання операцій над даними. ММД звичайно подається системою команд маніпулювання даними, серед яких можуть, наприклад, міститися команди:
— вибрати з БД конкретне дане за його найменуванням;
— вибрати з БД всі дані певного типу, значення яких задовольняють задані умови;
— записати нові дані до бази;
— вилучити певні дані з бази;
Важливий засіб централізації управління даними — словник даних.
Словник даних є спеціальною системою у складі банку даних, призначеною для зберігання й опрацювання єдиним способом організованої і централізованої інформації про всі ресурси даних конкретного банку.
У словнику містяться відомості про об'єкти певної предметної галузі, їх властивості і відношення між ними, відомості про дані, що зберігаються у базі (найменування даних, їхня структура, зв'язки з іншими даними), їхні можливі значення і формати подання, джерела їх виникнення, коди захисту, обмеження доступу до даних з боку користувачів та ін.
Колектив фахівців, які забезпечують функціонування автоматизованого банку даних, називають адміністрацією бази даних. Звичайно до складу адміністрації бази даних входять адміністратор, ана-літики і програмісти. Адміністратор — фахівець, який обізнаний з інформаційними потребами кінцевих користувачів, працює в тісному контакті з користувачами і відповідає за визначення, завантаження, захист та ефективність експлуатації бази даних. Програмісти розробляють сервісні програми й інші програмні засоби, що забезпечують обробку інформації і розв'язування задач на комп'ютері в межах ОС і СУБД. Аналітик будує інформаційну, зокрема математичну, модель певного проблемного середовища, використовуючи для цього необхідні математичні ме-тоди І методи моделювання. Функція аналітика полягає у переведенні задачі кінцевого користувача в деяку вихідну формальну модель.
Найпопулярніші СУБД, що встановлюються в невеликих організаціях і орієнтовані на роботу з кінцевими користувачами, є Access, FoxPro, Paradox.
Моделі бази даних (ієрархічна, мережева та реляційна).
. До основних моделей даних належать:
Ієрархічна
Мережева
і реляційна
В ієрархічній моделі даних інформацію про об'єкти предметної галузі подають у вигляді дерева. Це сукупність об’єктів різного рівня, причому об’єкти нижнього рівня підпорядковані об’єктам верхнього рівня. Усі вершини дерева мають певні рівні. На найвищому (першому) рівні знаходиться тільки одна вершина, яка називається коренем дерева — вузлом. Вона з'єднується ребрами з усіма вершинами, що знаходяться на наступному — другому рівні, і лише з ними. Вершини другого рівня з'єднуються з вершинами третього рівня ребрами так, що кожна вершина третього рівня з'єднана тільки з однією вершиною другого рівня, і т. д.
Найбільше поширена реляційна модель даних (РМД), яку в 1970 р. запропонував англійський математик Кодд. Реляційною БД називається БД, що містить інформацію, подану у відповідних прямокутних таблицях. Така таблиця називається відношенням (англійською relatіon означає «відношення»). Таблиця складається з рядків, які у термінології РМД називають записами (або кортежами). Таблиця має заголовок (назву відношення) і стовпці, або поля таблиці, що також мають заголовки. Кожен рядок таблиці містить інформацію про один окремий об'єкт системи (про конкретну книжку, співробітника установи тощо), а кожен стовпчик — певні характеристики (властивості, атрибути) цих об'єктів. Наприклад, атрибутами об'єктів можуть бути автор книжки, посада співробітника, відділ, в якому він працює, тощо. Рядки такої таблиці називаються — записами, а стовпчики — полями. Кожен запис повинен відрізнятися від інших значеннями головного ключа — певного поля або сукупності полів, що ідентифікують запис, роблять його унікальним. Для кожного поля визначається тип і формат.
Основне обмеження РМД є таким: будь-яка таблиця не має містити однакових записів. Для дотримання цього обмеження у РМД вводять поняття ключа.
Ключ — поле таблиці або сукупність полів, в яких значення не повторюються і таким чином забезпечують унікальність кожного запису таблиці.
Реляційна модель БД має такі властивості:
Кожен елемент таблиці – один елемент даних, Усі дані в одному і тому ж стовпчику таблиці мають один тип., Кожний стовпчик має унікальне ім’я, Однакові рядки в таблиці відсутні.
Ключ, що складається з одного поля, називають простим, а з кількох полів — складеним.
У мережевій моделі БД основною структурою є мережі, тобто довільні графи, у вершинах яких записано деяку інформацію, а ребра відповідають зв'язкам між вершинами (граф — це математична конструкція, що складається з вершин і ребер). Кожне ребро з'єднує дві вершини.
Мережева база даних відрізняється більшою гнучкістю, оскільки в ній існує можливість встановлювати додатково до вертикальних ієрархічних зв'язків горизонтальні зв'язки. Це полегшує процес пошуку потрібних елементів даних, оскільки вже не вимагає обов'язкового проходження кількох ієрархічних рівнів.