Інформатика:системи управління базами даних

Матеріал з USIC Wiki

Перейти до: навігація, пошук
Для ФІН

Ця стаття відноситься до групи довідкових статей для студентів ФІН.

Зміст

Загальні концепції СУБД; три моделі даних: реляційна, ієрархічна, мережева. Вимоги до СУБД.

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

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

Основні характеристики СУБД

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

Можливості СУБД

  • Дозволяється створювати БД (здійснюється за допомогою мови визначення даних DDL (Data Definition Language))
  • Дозволяється додавання, оновлення, видалення та читання інформації з БД (за допомогою мови маніпулювання даними DML, яку часто називають мовою запитів)
  • Можна надавати контрольований доступ до БД за допомогою:
    1. Системи забезпечення захисту, яка запобігає несанкціонованому доступу до БД;
    2. Системи керування паралельною роботою прикладних програм, яка контролює процеси спільного доступу до БД;
    3. Система відновлення - дозволяє відновлювати БД до попереднього непротирічного стану, що був порушений в результаті збою апаратного або програмного забезпечення

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

Основні компоненти середовища СКБД

  1. апаратне забезпечення
  2. програмне забезпечення
  3. дані
  4. процедури - інструкції та правила, які повинні враховуватись при проектуванні та використанні БД
  5. користувачі
    1. адміністратори даних(керування даними,проектування БД, розробка алгоритмів, процедур) та БД (фізичне проектування, відповідальність за безпеку та цілісність даних)
    2. розробники БД
    3. прикладні програмісти
    4. кінцеві користувачі

Архітектура СУБД

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

Рівні:

  1. Зовнішній - представлення БД з точки зору користувача.
  2. Концептуальний - узагальнене представлення БД, описує які дані зберігаються в БД і зв'язки між ними. Підтримує зовнішні представлення, підтримується внутрішнім рівнем.
  3. Внутрішній - фізичне представлення БД в комп'ютері.

Логічна незалежність - повна захищеність зовнішніх моделей від змін, що вносяться в концептуальну модель.

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

Мова SQL та її диалекти.

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

Захист баз даних: цілісність, безпечність, адміністрування.

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

Нормальні форми баз даних.

Реляційне числення та поняття реляційної повноти.

Реляційне числення та поняття реляційної повноти. Розширено:

РЧ – аналог числення предикатів 1-го порядку, запити, які зводяться до формул числення предикатів. Ця мн-на запитів є повною (немає такого, якого не можна було б виразити). Теза Кодда: Реляційне числення є реляційно повним (б-я запит, який може бути представлений у формі числення предикатів 1-го порядку є виконуваним.). на сьогоднішній день контр прикладу не існує. Всі вирази можна представити за доп. РЧ. Реляційна алгебра – найбільш низькорівнева мова; метамова – на її основі побудовані інші мови програмування; є спільним знаменником для всіх типів СУБД. Елементи основної мн-ни – реляції(відсутня індексація (порядок полів у таблиці)).

Теоретичні основи реляційної моделі баз даних були закладені Е.Коддом на початку 70-х років [1] і спочатку дійсно мали чисто теоретичний характер. На відміну від поширених на той час систем з ієрархічними чи мережаними типами структур даних реляційний підхід запропонував гранично спрощені структури даних – реляції чи таблиці, але значно употужнив мови маніпулювання даними та мови запитів.


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

Реляційне числення спирається на апарат числення предикатів.

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

Мови називаються логічно еквівалентними якщо для кожного виразу мови А існує еквівалентний вираз мови В.

Реляційна алгебра та реляційне числення є логічно еквівалентними. Це доводить алгоритм редукції Кодда.

В реляційному численні використовують 2 класи мов:

1. числення доменів (числення предикатів, ОДЗ змінних – домени) – QBE, FQL.
2. числення кортежів (класичне числення предикатів 1-ого порядку, ОДЗ – кортежі у відношеннях баз даних) – ALPHA.

Основні операціїї реляційної алгебри.

Теоретичні основи реляційної моделі баз даних були закладені Е.Коддом на початку 70-х років і спочатку дійсно мали чисто теоретичний характер. На відміну від поширених на той час систем з ієрархічними чи мережаними типами структур даних реляційний підхід запропонував гранично спрощені структури даних – реляції чи таблиці, але значно употужнив мови маніпулювання даними та мови запитів. Сигнатура реляційної алгебри складається з 8-ми операцій.

Теоретико-множинні операції \cup,\cap,\ – частково визначені (визначені тільки для сумісних реляцій з однаковою структурою).

Реляції R1(A1, … , An) і R2(B1, … , Bk) називаються сумісними, якщо: 1. у них однакова кількість атрибутів, тобто k = n; 2. кожному атрибуту першої реляції можна поставити у взаємно однозначну відповідність атрибут другої реляції, тобто існує таке бієктивне відображення

S:{1, … , k} \rightarrow {1, … , k}, що

N(Ai) = N(BS(i)), i = 1поділити k.


  • 1-Об’єднання.

R1\cupR2: в результуючу реляцію попадають всі кортежі першої і другої реляції без дублів.

  • 2-Перетин.

R1\capR2: в результуючу реляцію попадають кортежі, присутні і в першій, і в другій реляції.

  • 3-Різниця.

R1\R2: в результуючу реляцію попадають кортежі з R1, яких немає в R2.

  • 4-Декартів добуток:R1\otimesR2 – визначається для будь-яких реляцій. Ця операція може різко збільшити об’єм результату.
  • 5-Проекція. R[n] - повертає набір значень n-того атрибуту для всіх кортежів у реляції.
  • 6-Операція θ - з’єднання (θ - join).
  • 7-Операція θ - обмеження.

В літературі іноді цю операцію називають селекцією або фільтрацією. Ця операція задається над однією реляцією з двома списками атрибутів; використовується також поняття q - порівнюваності.

  • 8-Операція ділення.
Особисті інструменти