
- •Тема 10. Структури баз даних
- •Основні поняття бази даних Категорії „Дані“ та „Модель даних“ є однією з базових концепцій Баз даних
- •Багаторівневий підхід до реалізації баз даних
- •Реляційна модель баз даних
- •Реляційні операції
- •Реляційна модель бд – реляційне проектування
- •Мова sql
- •Об'єктно-орієнтовані бази даних
- •Забезпечення цілісності бд - протокол фіксації / відкоту змін в бд
- •Вплив технологій баз даних на суспільство
Реляційна модель бд – реляційне проектування
Фізичний спосіб зберігання інформації в БД описується в термінах систем масової пам’яті
Для забезпечення програміста базовими засобами програмування БД повинна містити процедури, які виконуватимуть реляційні операції SELECT, PROJECT та JOIN
Для СКБД найпростішим методом зберігання даних є представлення окремих відношень у вигляді файлів, в якому кожен кортеж відділяється логічним записом
Однак при виконанні операції SELECT файл потрібно зчитувати послідовно, що призведе до затримок у процесі роботи з даними
Тому для представлення великого відношення використовується індексований файл
Одним з найпопулярніших інструментів, який забезпечує роботу згаданих нами операцій є мова SQL
SQL (Structured Query Language) — найпоширеніша мова керування даними в СКБД
Послідовність операцій SELECT, PROJECT та JOIN можна представити за допомогою єдиного оператора
Select Emp1Id, Dept from ASSIGMENT.JobId = JOB.JobId and ASSIGNMENT.TermDate = ‘*’
Всі запити є декларативними операторами
Чітко визначена послідовність операцій — відсутня
Мова sql
SQL (англ. Structured query language — мова структурованих запитів) — декларативна мова програмування для взаємодії користувача з базами даних, що застосовується для формування запитів, оновлення і керування реляційними БД, створення схеми бази даних і її модифікації, системи контролю за доступом до бази даних. Сам по собі SQL не є ні системою керування базами даних, ні окремим програмним продуктом. Не будучи мовою програмування в тому розумінні, як C або Pascal, SQL може формувати інтерактивні запити або, будучи вбудованою в прикладні програми, виступати в якості інструкцій для керування даними. Стандарт SQL, крім того, вміщує функції для визначення зміни, перевірки і захисту даних.
SQL — це діалогова мова програмування для здійснення запиту і внесення змін до бази даних, а також управління базами даних. Багато баз даних підтримує SQL з розширеннями до стандартної мови. Ядро SQL формує командна мова, яка дозволяє здійснювати пошук, вставку, обновлення, і вилучення даних, використовуючи систему управління і адміністративні функції. SQL також включає CLI (Call Level Interface) для доступу і управління базами даних дистанційно.
Об'єктно-орієнтовані бази даних
Одним з найновіших напрямків досліджень в області БД є застосування об’єктно-орієнтованої парадигми до їх побудови
Результатом таких досліджень стала об’єктно-орієнтована БД
Схожим чином, будь-який об’єкт класу JOB повинен містити методи для отримання опису посади, і, можливо, перелік всіх працівників, які займали дану посаду
В об’єктно-орієнтованій СКБД зв’язки між об’єктами забезпечуються засобами СКБД
Іншою задачею, яку вирішує об’єктно-орієнтована СКБД, полягає у забезпеченні постійного зберігання наявних об’єктів
Така вимога, не зважаючи на свою очевидність, суттєво відрізняється від наявних методів роботи з об’єктами
Об’єкти створюються в процесі виконання об’єктно-орієнтованої програми, зазвичай знищуються після її завершення
Однак об’єкти, які створено та передано до БД певною програмою, повинні зберігатися і після завершення роботи такої програми
Важливою перевагою об’єктно-орієнтованих БД є те, що вони дозволяють створювати ПЗ певної системи в рамках однієї парадигми
Такий метод суттєво відрізняє дану технологію від загальноприйнятої практики застосування імперативних мов програмування для при розробці ПЗ, яке взаємодіє з релятивною БД
Для демонстрації даної переваги розглянемо задачу зберігання імен співробітників у реляційній БД
В реляційній БД атрибути відношень є частиною загальної структури БД, тому типи даних, які асоціюються з даними атрибутами, використовуються у всій БД
Така структура виправдовує себе коли потрібно працювати з числовими або символьними даними
Однак розширення реляційної БД шляхом створення нового відношення, яке містить атрибути аудіо- та відеотипів, може виявитися складною задачею
Щоб опрацьовувати дані цих типів необхідно буде змінити наявні процедури
В результаті цього, ті ж самі процедури, які використовуються для отримання даних про прізвище, ім’я, по-батькові, можуть використовуватися і для опрацювання об’єктів, які представляють відеозапис