Выписка из учебной программы дисциплины

Номер раздела, темы, занятия Название раздела, темы, занятия; перечень изучаемых вопросов  
 
 
Модели данных и механизмы реализации БД. Реляционная модель. Предметная область. Информационный объект. Понятие базы данных (БД). Требования, предъявляемые к БД. Устройства для размещения БД. Модели данных. Иерархическая модель. Сетевая модель, даталогические модели. Средства представления моделей. Реляционная модель. Достоинства и недостатки реляционной модели данных. Понятие реляционного отношения. Домен, кортеж, ключ. Схема отношения. Логические связи между отношениями. Типы логических связей. Потенциальные ключи. Первичный ключ. Внешние ключи. Операции над отношениями.  
Реляционная алгебра и реляционное исчисление. Основы теории множеств. Реляционная алгебра. Общая интерпретация реляционных операций. Основные операции реляционной алгебры. Специальные операции реляционной алгебры. Реляционное исчисление: исчисление кортежей, исчисление доменов, язык запросов по образцу. Операции над отношениями в реляционной СУБД.  
Логическое проектирование модели БД. Основы, принципы и аспекты проектирования. Проектирование реляционной БД, этапы проектирования. Концептуальное проектирование. Концептуальная модель. Логическое проектирование. Сущности и связи. Диаграмма «сущность-связь»: модель уровня сущностей, модель данных, основанная на ключах, полная атрибутивная модель. 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. Модели организации данных.

Наши рекомендации