Выписка из учебной программы дисциплины
Номер раздела, темы, занятия | Название раздела, темы, занятия; перечень изучаемых вопросов | |
Модели данных и механизмы реализации БД. Реляционная модель. Предметная область. Информационный объект. Понятие базы данных (БД). Требования, предъявляемые к БД. Устройства для размещения БД. Модели данных. Иерархическая модель. Сетевая модель, даталогические модели. Средства представления моделей. Реляционная модель. Достоинства и недостатки реляционной модели данных. Понятие реляционного отношения. Домен, кортеж, ключ. Схема отношения. Логические связи между отношениями. Типы логических связей. Потенциальные ключи. Первичный ключ. Внешние ключи. Операции над отношениями. | ||
Реляционная алгебра и реляционное исчисление. Основы теории множеств. Реляционная алгебра. Общая интерпретация реляционных операций. Основные операции реляционной алгебры. Специальные операции реляционной алгебры. Реляционное исчисление: исчисление кортежей, исчисление доменов, язык запросов по образцу. Операции над отношениями в реляционной СУБД. | ||
Логическое проектирование модели БД. Основы, принципы и аспекты проектирования. Проектирование реляционной БД, этапы проектирования. Концептуальное проектирование. Концептуальная модель. Логическое проектирование. Сущности и связи. Диаграмма «сущность-связь»: модель уровня сущностей, модель данных, основанная на ключах, полная атрибутивная модель. ER-модели. Проектирование модели БД в терминах «сущность-связь». | ||
Нормализация данных. Понятие нормализации данных. Основные нормальные формы (НФ) реляционных отношений: первая, вторая и третья НФ. НФ Бойса-Кодда, четвертая и пятая НФ (нормальная форма проекции-соединения – PJ/NF). | ||
Физическая организация БД. Понятие физической модели данных. Развитие методов физической организации данных. Физическое проектирование. Вопросы, решаемые на этапе физического проектирования. Критерии выбора физической организации данных. Инструментальные средства для создания БД и ее объектов. CASE-средства проектирования модели БД. | ||
Системы управления базами данных (СУБД). Понятие системы управления базами данных (СУБД). Общая характеристика СУБД. Классификация СУБД. Однопользовательские и многопользовательские СУБД. Типовая организация современной СУБД. Основные функции СУБД. Поддержка языков БД в СУБД. Классификация и особенности. Основные принципы взаимодействия СУБД и прикладных программ. Обзор, функциональные возможности и тенденции развития современных СУБД. | ||
Языки запросов. Языки запросов, их основные возможности. Типы запросов. Способы создания запроса. Инструментальные средства для формирования запросов. Запросы по образцу. Язык запросов по образцу и другие высокоуровневые языки запросов. Использование соответствующего языка для работы с данными БД. | ||
Язык SQL, основные конструкции и работа с данными. Назначение, возможности и основные термины языка SQL. SQL, стандарты SQL. Структура языка SQL, основные типы операторов, функции и запросы. Язык определения данных, язык манипулирования данными. Создание, удаление и работа с объектами БД. Типы данных. Описание и операции манипулирования данными. Использование реляционных, булевых и специальных операторов. Запросы, основные виды, структура и назначение SQL-запроса. Использование агрегатных функций. Вычисление выражений. Передача результатов запроса внешней программе или пользовательской процедуре. Структура и использование оператора SELECT. Задание условий поиска. Предложение WHERE. Подзапрос. Предикат сравнения. Группирование и сортировка результата запроса. Запрос на изменение данных. Поисковая модификация данных. Оператор UPDATE. Запрос на удаление. Поисковое удаление. Оператор DELETE. | ||
Пользовательские процедуры и функции. Использование встроенных процедур. Объявление пользовательской процедуры. Внешние параметры. Передача параметров. Взаимодействие процедур и функций. Возврат результата из пользовательской процедуры (функции). Передача результата процедуры внешнему приложению. Выполнение пользовательской процедуры. Использование пользовательских процедур и функций во внешних пользовательских приложениях. Организация и использование представлений. | ||
Использование курсоров. Понятие курсора. Виды курсоров. Работа с курсорами. Дополнительные средства работы с курсорами. Передача результатов вычисления выражения внешнему приложению. | ||
Целостность баз данных. Управление транзакциями. Понятие целостности (целостность таблиц, типов данных, ссылочная целостность). Основные действия по обеспечению целостности. Обеспечение ссылочной целостности на основе внешних ключей. Понятие триггера. Структура и проектирование триггера. Поддержание целостности на основе механизма триггеров. Понятие транзакции, особенности ее исполнения. Модели и свойства транзакций. Сериализация транзакций. Средства управления транзакциями. Журнализация и проблемы параллельного выполнения транзакций. | ||
Повышение производительности баз данных. Индексирование. Виды индексов. Пересечение индексов. Фрагментация индексов. Дефрагментация. Блокировки. Статистика объектов. Понятие плотности и селективности. Оптимизация запросов. План выполнения транзакций. Оптимизация плана. Оценка селективности. | ||
Администрирование и управление объектами базы данных. Резервирование БД. Понятие репликации БД. Оптимизация работы БД. Восстановление БД. Актуальность защиты БД. Методы защиты: защита с помощью пароля, шифрование и дешифрование БД, защита на уровне управления доступом пользователей. Управление транзакциями. Управление правами доступа. | ||
Методы доступа к базам данных их прикладных программ. Интерфейсы и средства доступа к БД и к данным в БД. Объектные интерфейсы доступа. Открытый интерфейс доступа к базам данных из прикладных программ (ODBC). Назначение, структура, функции ODBC. Использование ODBC в прикладных программах. | ||
Базы данных в клиент-серверной архитектуре. Распределение БД. Тиражирование данных. Клиент-серверная архитектура, основные модели реализации. Использование баз данных в клиент-серверной архитектуре. Понятие сервера базы данных, функции сервера и основные методы доступа к данным (FS, RDA,DBS,AS). Поддержка технологии клиент/сервер в СУБД. Функции БД в 2-звенной, 3-звенной и многозвенной архитектуре. Базы данных в распределенных средах. Проблемы интеграции распределенных баз данных и данных, размещаемых в различных узлах сети. Технология тиражирования, основные механизмы реализации. Перспективные модели и направления развития БД и СУБД. |
Конкретные вопросы, позволяющие раскрыть содержание каждой темы
1. Понятие базы данных (БД).
2. Требования, предъявляемые к БД.
3. Модели данных. Инфологическая модель.
4. Модели данных. Иерархическая модель.
5. Модели данных. Сетевая модель.
6. Модели данных. Реляционная модель.
7. Реляционная модель. Достоинства и недостатки.
8. Схема отношения. Логические связи между отношениями.
9. Реляционная алгебра. Объединение, пересечение, вычитание и декартово произведение.
10. Реляционная алгебра. Выборка, проекция, соединение и деление.
11. Основы, принципы и аспекты проектирования.
12. Этапы проектирования базы данных
13. Проектирование модели БД в терминах «сущность-связь».
14. Понятие нормализации данных. Функциональная зависимость
15. Первая, вторая и третья нормальные формы.
16. НФ Бойса-Кодда, четвертая и пятая нормальные формы.
17. Понятие СУБД. Классификация СУБД.
18. Типовая организация современной СУБД.
19. Основные функции СУБД.
20. Языки запросов, их основные возможности.
21. Назначение, возможности и основные термины языка SQL
22. Основные объекты СУБД «Oracle».
23. Типы данных.
24. Создание, удаление и работа с объектами БД.
25. Создание запросов. Предложение Select, порядок выполнения операторов.
26. Создание запросов. Основные типы условий поиска.
27. Агрегирование и группировка данных.
28. Манипулирование данными отношений (таблиц).
29. Понятие подзапроса.
30. Использование встроенных процедур и функций. Функции работы с символами, строками и датами.
31. Использование встроенных процедур и функций. Функции работы с числами. Функции преобразования типов данных.
32. Создание пользовательских процедур.
33. Создание пользовательских функций.
34. Организация и использование представлений.
35. Работа с курсорами.
36. Соединение таблиц и запросов при организации запросов.
37. Целостность баз данных.
38. Работа с триггерами.
39. Понятие транзакции. Свойства транзакций.
40. Взаимовлияние транзакций.
41. Блокировки и тупиковые ситуации.
42. Индексирование. Виды индексов.
43. Работа с индексами.
44. Оптимизация запросов в реляционных СУБД.
45. Методы оптимизации запросов.
46. Методы доступа к базе данных. Технологии ODBC, BDE.
47. Методы доступа к базе данных. Технологии ADO, OLE DB.
48. Модели организации данных.