| Специалност |
Приложна математика (бакалавър) |
| Форма
на оценяване |
Изпит |
| Дисциплината
се води от |
Катедра
Компютърни системи |
| Анотация |
Въведение в системите за
управление на бази данни. Архитектура на СУБД. Релационни
обекти - домейни и релации. Релационна цялостност на
данните – първични и външни ключове. Рлационна алгебра.
Релационен език SQL. Езици за програмиране и SQL. Функционални
зависимости. Затвореност на множество от атрибути. Теория
на нормализацията. ER модел. Възстановяване на системата.
Конкурентност. Цялостност и защита на данните. Разпределени
системи. Клиент/сървър архитектури. |
| Съдържание |
| 1. Въведение в системите
за управление на бази данни. Основни понятия.
Видове данни. Цялостност и независимост на данните.
Бази данни. Видове БД. Системи за управление на бази
данни. Компоненти на СУБД. Режими на работа на СУБД.
Предимства и недостатъци на еднопотребителските бази
данни. Многопотребителски бази данни: централизиран
контрол. |
| 2. Архитектура на
СУБД. Нива на архитектурата на СУБД. Външно,
концептуално и вътрешно ниво: същност и предназначение.
Кореспонденции. Алгоритъм на работа на СУБД. Клиент/Сървър
архитектура. Разпределена обработка. |
| 3. Релационни обекти:
домейни. Релационен модел. Релационни обекти:
домейни, релации. Домейни – същност и предназначение.
Определение за домейн. Сравнения и ограничения върху
домейн. Създаване и изтриване на домейн, дефиниране
на данни върху домейн. Съставни домейни. |
| 4. Релационни обекти:
релации. Определения. Дефиниране на данни.
Релация. Релационна променлива. Свойства на релациите.
Нормализирани и ненормализирани релации. Видове релации:
именувани, базови, дериватни, моментна снимка и др.
Релации и предикати. |
| 5. Релационна цялостност
на данните: първични ключове. Релационна цялостност.
Специфични и общовалидни правила за цялостност. Концепция
за първичните ключове. Суперключове. Ключове-кандидати:
първични и алтернативни ключове. Свойства и предназначение.
Нулеви стойности. Ключ-кандидат и нулеви стойности. |
| 6. Релационна цялостност
на данните: външни ключове. Определение. Свойства
на външните ключове. Референциална цялостност и референциално
ограничение. Правило за референциалната цялостност.
Референциални диаграми. Подходи за запазване референциалната
цялостност на данните. Външен ключ и нулеви стойности. |
| 7. Релационни оператори:
релационна алгебра. Въведение в релационната
алгебра. Релационни оператори – класификация. Затвореност.
Традиционни оператори: обединение, сечение, разлика,
произведение. Съвместимост на типове. Специални оператори:
ограничение, проекция, естествено сливане, делене. Асоциативност
и комутативност на релационните оператори. |
| 8. Релационен език
SQL. Обща характеристика. Език за дефиниране
на данни (DDL) – създаване, промяна и изтриване на таблица
и домейн. Опериране с данните (DML) – операции за въвеждане,
промяна, извличане и изтриване на данни. Индекси. |
| 9. Езици за програмиране
и SQL. Курсори. Вграден SQL. Драйвери за бази
данни. Интерфейси за достъп до бази данни: ODBC, JDBC.
Достъп до бази данни чрез Java. |
| 10. Функционални
зависимости. Основни понятия. Тривиални и нетривиални
функционални зависимости. Затвореност на множество от
функционални зависимости. Аксиоми на Армстронг. Следствия. |
| 11. Затвореност на
множество от атрибути. Суперключ. Затвореност
на множество от атрибути. Алгоритъм за определяне на
затвореността на множество от атрибути. Приложение.
Обвивка и еквивалентност на множества от функционални
зависимости. Несъкратимо минимално множество от функционални
зависимости. |
| 12. Теория на нормализацията.
Нормални форми. Класификация. Декомпозиция без загуба
и функционални зависимости. Теорема на Хийт. Диаграми
на функционални зависимости. Нормализираща процедура.
Частична и пълна функционална зависимост. Първа, втора
и трета нормална форма – предимства и недостатъци. UDATE-аномалии. |
| 13. Entity-Relationship
(ER) модел. Основни понятия. Диаграмно представяне
на ER моделите. Алгоритъм за генериране на схема на
база данни от ER модел. Схеми за представяне на бази
данни. |
| 14. Възстановяване
на системата. Обща характеристика. Транзакции.
Оператори. Реализация на транзакциите. Структура на
програма, използваща транзакции. Свойства на транзакциите. |
| 15. Конкурентност.
Определение. Проблеми при конкурентността: загуба на
промяна, незавършена зависимост, неконсистентен анализ.
Блокировки. Механизъм на блокировка. Deadlock. |
| 16. Функционални
зависимости. Основни понятия. Тривиални и нетривиални
функционални зависимости. Затвореност на множество от
функционални зависимости. Аксиоми на Армстронг. Следствия. |
| 17. Цялостност.
Определение. Видове правила за цялостност: за области,
атрибути, релации и база данни. Тригери и тригерни процедури.
SQL поддръжка. Отложена проверка. |
| 18. Разпределени
системи. Разпределени бази данни. Обща характеристика.
Предимства. Основен принцип на разпределената обработка.
Обективности: локална автономност, непрекъснато опериране,
независимост от местоположението, фрагментарна независимост,
разпределено управление на транзакциите, хардуерна независимост
и др. |
| 19. Клиент/сървър
архитектури. Основна идея, принципи и предназначение.
Архитектура на многослойни приложения. Ползи от сървъра
за бази данни. |