Базы данных в сетевых окружениях

advertisement
Программа дисциплины
Технологии баз данных
Цель и задачи курса
Цель дисциплины «Технологии баз данных» - изучение основных концепций,
методов и средств построения и использования баз данных. В курсе рассматривается
генезис и современное состояние данной области, типовая организация систем
управления базами данных, модели данных, принципы построения информационных
систем на основе технологий баз данных, теоретические основы реляционных баз
данных, язык SQL и его стандартизация, организация call-интерфейсов для работы с
базами данных, промышленный стандарт прикладного интерфейса ODBC и его
применение. Кроме этого, в курсе рассматриваются методы управления
транзакциями в распределенных базах данных, распределенные информационные
системы с архитектурой "клиент-сервер" и принципы их построения, концепция и
характерные черты объектно-ориентированных и интеллектуальных баз данных.
1. 1. Информационные системы, файловые системы, базы данных
2. Генезис информационных и информационно-поисковых систем, систем
управления
документооборотом,
систем
на
основе
плоских
и
структурированных файлов, баз данных, распределенных информационных
систем. Накопление и представление информации; анализ и индексация;
поиск, выборка, связывание, навигация; конфиденциальность, целостность,
безопасность
и
защищенность,
сохранность;
масштабируемость,
производительность, эффективность.
3. 2. Функции и типовая организация систем управления базами данных
(СУБД)
4. Основные функции СУБД, управление данными во внешней памяти,
управление буферами оперативной памяти, управление транзакциями,
журналы. Архитектура СУБД ANSI/SPARC. Классификация СУБД: системы,
основанные на инвертированных списках, иерархические системы, сетевые
системы, реляционные и постреляционные СУБД.
5. 3. Модели данных в СУБД
6. Классические модели данных в СУБД. Иерархическая модель данных,
навигационные операции. Сетевая модель данных, навигационные операции.
Реляционные модели данных, реляционная алгебра и реляционные отношения.
CASE-средства для описания модели данных и автоматизации процесса
проектирования прикладных информационных систем.
7. 4. Жизненный цикл и методология проектирования информационных
систем
8. Принципы проектирования информационных систем. Структурный анализ
предметной области, логическое проектирование баз данных, физическое
проектирование баз данных, словари-справочники данных.
9. 5. Теоретические основы реляционного подхода
10. Базовые определения реляционных баз данных: тип данных, домен, схема
отношения, схема базы данных, кортежи и отношения, свойства отношений,
ключи. Представление отношений. Целостность и ограничения целостности.
Семантическое моделирование данных, ER-диаграммы.
11. 6. Механизмы манипулирования реляционными данными и методы
проектирования реляционных баз данных
12. Базис реляционной модели данных: интерпретация реляционных операций,
особенности семантики теоретико-множественных операций, специальные
реляционные операции. Проектирование реляционных баз данных с
использованием нормализации. Классификация нормальных форм. Третья
нормальная форма. Более высокие уровни нормализации.
13. 7. Стандартизация интерфейса для СУБД. Стандарт языка SQL
14. Общие подходы к стандартизации интерфейса с реляционными базами
данных. Языки SQL и QBЕ. Общая структура языка SQL, интерфейс с
прикладными программами. Встроенный SQL, динамический SQL.
15. 8. Основные операторы языка SQL
16. Оператор выборки SELECT, фильтрация выборки - клауза WHERE,
агрегатные функции, клауза HAVING. Оператор добавления данных INSERT.
Оператор удаления данных DELETE. Оператор объединения UNION.
Внутренний и внешний операторы JOIN, левосторонние и правосторонние
операции.
17. 9. Оптимизация запросов при использовании SQL
18. Оптимизация запросов. Использование индексов. Блокировки при обработке
транзакций. Общая схема обработки запроса, синтаксическая оптимизация
запросов, логические преобразования запросов, преобразования запросов с
изменением порядка реляционных операций, упрощение запросов со
вложенными
подзапросами,
преобразования
запросов
на
основе
семантической информации. Генерация планов, оценка стоимости плана
запроса.
19. 10. Использование SQL при разработке приложений
20. Программирование с использованием встроенного SQL. Операторы
манипулирования данными. Курсоры, динамический и статический SQL.
Сохраненные процедуры.
21. 11. Call-интерфейсы (db-library), стандарты ODBC и JDBC
22. Организация
call-интерфейсов,
примеры
использования.
Описание
организации ODBC, описание уровней стандартов Core, Level 1, Level 2.
Примеры программирования с использованием API ODBC и JDBC.
23. 12. Структуры внешней
управление транзакциями
памяти,
методы
организации
индексов,
24. Хранение отношений, индексы, журналы и служебная информация.
Транзакции. Свойства ACID. Транзакции и целостность баз данных,
изолированность пользователей, управление транзакциями. Многофазные
транзакции. Репликация данных.
25. 13. Распределенные базы данных и архитектура "клиент-сервер"
26. Классификация распределенных СУБД. Распределенные информационные
системы с архитектурой "клиент-сервер". Принципы взаимодействия между
клиентскими и серверными частями, протоколы удаленного вызова процедур.
27. 14. Постреляционные базы данных
28. Концепция и архитектура объектно-ориентированных баз данных. Их
сравнение с реляционными базами данных. Объектно-ориентированные
расширения SQL (SQL-3). Принципы построения объектно-ориентированных
баз данных. Активные базы данных.
29.
Литература
1.
2.
3.
4.
5.
6.
7.
Э. Озкарахан. Машины баз данных и управление базами данных. М.:Мир, 1989.
Т. Тиори, Дж. Фрай. Проектирование структур баз данных. М.:Мир, 1985
Д. Мейер. Теория реляционных баз данных. М.:Мир, 1987
Дж. Ульман. Основы систем баз данных. М.:Финансы и статистика, 1983
К. Дейт. Введение в системы баз данных. М.:Наука, 1980
Д. Цикридзис, Ф. Лоховски. Модели данных. М.:Финансы и статистика
К. Дейт Руководство по реляционной СУБВ DB2. М.:Финансы и статистика,
1988.
8. М. Грабер. Введение в SQL. М.:Лори, 1996.
9. Р. Сигнор, М.Стегман. Использование ODBC для доступа к базам данных.
М.:Бином, 1995.
10. Martin J. and J. Lebel. Client/Server Databases Enterorise Computing. Prentice Hall
PTR Upper Saddle River, New Jersey 07458, 1997, p.352.
Download