Базы данных Сергей Дмитриевич Кузнецов Институт системного программирования РАН kuzloc@ispras.ru.

Презентация:



Advertisements
Похожие презентации
Языки манипулирования данными. Общая характеристика Язык, в котором можно (по крайней мере) моделировать исчисление с переменными- кортежами, либо, что.
Advertisements


Проектирование реляционных БД на основе принципов нормализации"
База данных и СУБД: основные понятия. База данных: общее понятие База данных: хранилище информации отражает объект реального мира имитирует деятельность.
Введение в базы данных. Реляционное проектирование Затрагиваемые темы Проблемы, решаемые хранением данных в СУБД Проблемы, решаемые хранением данных в.
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ УПРАВЛЕНИЯ Обработка и хранение информации.
Основы реляционных баз данных Лекция 1. История и введение Желенкова Ольга Петровна, с.н.с. ОИ САО РАН, к.ф.-м.н апреля 2008.
Операции реляционной алгебры -соединение Соединением отношений A(A 1, A 2 …A n ) и B(B 1, B 2 … B n ) по операции :A 1 xA 2 x…A n xB 1 xB 2 …B n {T|F}
Разработка баз данных предприятий ЯОК Саровский физико-технический институт.
Модуль 1. Математические основы баз данных и знаний 1.
Введение в базы данных Лямин Андрей Владимирович.
Проектирование БД. Нормальные формы В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм: первая нормальная.
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ) КАФЕДРА ИКТ 1 Лекция 4. Проектирование БД. От и до. Курс: Базы Данных.
Модуль 1. Математические основы баз данных и знаний.
Технология хранения, поиска и сортировки информации в базах данных
Введение. Цели и задачи. Основные понятия и определения. Требования к базам данных.
НАЧАТЬ ТЕСТ по КИТ2 Разработчики: Оскерко В.С., доцент, к.э.н. Панько Н.Г., студентка ДФФ-1, 2-й курс 2011 г.
Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Матричная универсальная объектно-ориентированная база данных с поддержкой древовидной структуры единицы информации к.ф.-м.н. Микляев И.А.
Типовые расчёты Растворы
Транксрипт:

Базы данных Сергей Дмитриевич Кузнецов Институт системного программирования РАН

С.Д. Кузнецов. Базы данных. Содержание курса. 2 Общая структура курса Часть 1. Базы данных, СУБД и модели данных Часть 2. Реляционная модель данных Часть 3. Проектирование реляционных баз данных Часть 4. Алгоритмы и методы построения реляционных СУБД Часть 5. Модель данных SQL

С.Д. Кузнецов. Базы данных. Содержание курса. 3 Часть 1. Базы данных, СУБД и модели данных (1) Назначение технологии баз данных. Функции и основные компоненты систем управления базами данных Информационные системы и устройства внешней памяти Файловые системы Потребности информационных систем Основные функции и компоненты СУБД

С.Д. Кузнецов. Базы данных. Содержание курса. 4 Часть 1. Базы данных, СУБД и модели данных (2) Понятие модели данных. Обзор разновидностей моделей данных Модель данных Ранние модели данных Модель данных инвертированных таблиц Иерархическая модель данных Сетевая модель данных Неформальное введение в реляционную модель данных

С.Д. Кузнецов. Базы данных. Содержание курса. 5 Часть 1. Базы данных, СУБД и модели данных (3) Понятие модели данных. Обзор разновидностей моделей данных Современные модели данных Объектно-ориентированная модель данных Модель данных SQL Истинная реляционная модель

С.Д. Кузнецов. Базы данных. Содержание курса. 6 Часть 2. Реляционная модель данных (1) Реляционная модель данных. Понятия и определения. Основные свойства отношений. Целостность сущности и ссылок Базовые понятия реляционных баз данных Фундаментальные свойства отношений Реляционная модель данных Общая характеристика Целостность сущности и ссылок

С.Д. Кузнецов. Базы данных. Содержание курса. 7 Часть 2. Реляционная модель данных (2) Реляционные алгебра и исчисление Алгебра Кодда Общая характеристика Замкнутость реляционной алгебры и операция переименования Особенности теоретико-множественных операций реляционной алгебры Специальные реляционные операции Реляционная алгебра A Кристофера Дейта и Хью Дарвена Базовые операции Алгебры A Полнота Алгебры A Избыточность Алгебры A

С.Д. Кузнецов. Базы данных. Содержание курса. 8 Часть 2. Реляционная модель данных (3) Реляционные алгебра и исчисление Реляционное исчисление кортежей Кортежные переменные Правильно построенные формулы Целевые списки и выражения реляционного исчисления Реляционное исчисление доменов Условия членства Выражения исчисления доменов

С.Д. Кузнецов. Базы данных. Содержание курса. 9 Часть 3. Проектирование реляционных баз данных (1) Проектирование реляционных баз данных на основе учета функциональных зависимостей. Вторая и третья нормальные формы отношений, нормальная форма Бойса-Кодда Элементы теории функциональных зависимостей Базовые определения и утверждения теории функциональных зависимостей Декомпозиция без потерь и функциональные зависимости

С.Д. Кузнецов. Базы данных. Содержание курса. 10 Часть 3. Проектирование реляционных баз данных (2) Проектирование реляционных баз данных на основе учета функциональных зависимостей. Вторая и третья нормальные формы отношений, нормальная форма Бойса-Кодда Минимальные функциональные зависимости и вторая нормальная форма Нетранзитивные функциональные зависимости и третья нормальная форма Независимые проекции отношений. Теорема Риссанена

С.Д. Кузнецов. Базы данных. Содержание курса. 11 Часть 3. Проектирование реляционных баз данных (3) Проектирование реляционных баз данных на основе учета функциональных зависимостей. Вторая и третья нормальные формы отношений, нормальная форма Бойса-Кодда Перекрывающиеся возможные ключи и нормальная форма Бойса-Кодда Всегда ли следует стремиться к BCNF?

С.Д. Кузнецов. Базы данных. Содержание курса. 12 Часть 3. Проектирование реляционных баз данных (4) Проектирование реляционных баз данных: дальнейшая нормализация Многозначные зависимости и четвертая нормальная форма Теорема Фейджина Зависимость проекции/соединения и пятая нормальная форма N-декомпозируемые отношения

С.Д. Кузнецов. Базы данных. Содержание курса. 13 Часть 3. Проектирование реляционных баз данных (5) Проектирование реляционных баз данных с использованием диаграмм «сущность- связь» и диаграмм классов языка UML Семантические модели данных Семантическая модель Entity-Relationship Основные понятия ER-модели Уникальные идентификаторы типов сущности Нормальные формы ER-диаграмм Более сложные элементы ER-модели (наследование) Получение реляционной схемы из ER-диаграммы

С.Д. Кузнецов. Базы данных. Содержание курса. 14 Часть 3. Проектирование реляционных баз данных (6) Проектирование реляционных баз данных с использованием диаграмм «сущность- связь» и диаграмм классов языка UML Диаграммы классов языка UML Основные понятия диаграмм классов UML o Классы, атрибуты, операции o Категории связей. Связь-зависимость o Связи-обобщения и механизм наследования классов в UML o Связи-ассоциации: роли, кратность, агрегация Ограничения целостности и язык OCL Получение схемы реляционной базы данных из диаграммы классов UML

С.Д. Кузнецов. Базы данных. Содержание курса. 15 Часть 4. Алгоритмы и методы построения реляционных СУБД (1) Пример общей организации СУБД. Физическое представление реляционных баз данных во внешней памяти. Индексные структуры Основные понятия, цели и общая организация System R Цели System R и их связь с общей организацией системы Организация внешней памяти в базах данных System R Интерфейс RSS

С.Д. Кузнецов. Базы данных. Содержание курса. 16 Часть 4. Алгоритмы и методы построения реляционных СУБД (2) Пример общей организации СУБД. Физическое представление реляционных баз данных во внешней памяти. Индексные структуры Общие принципы организации данных во внешней памяти в SQL-ориентированных СУБД Хранение таблиц Индексы (B-деревья, хэширование) Журнальная информация Служебная информация

С.Д. Кузнецов. Базы данных. Содержание курса. 17 Часть 4. Алгоритмы и методы построения реляционных СУБД (3) Методы управления транзакциями. Синхронизационные блокировки, временные метки и версии Общее понятие транзакции и основные характеристики транзакций Атомарность транзакций Транзакции и целостность баз данных Изолированность транзакций Сериализация транзакций

С.Д. Кузнецов. Базы данных. Содержание курса. 18 Часть 4. Алгоритмы и методы построения реляционных СУБД (4) Методы управления транзакциями. Синхронизационные блокировки, временные метки и версии Методы сериализации транзакций Синхронизационные блокировки o Гранулированные синхронизационные блокировки o Предикатные синхронизационные блокировки Синхронизационные тупики, их распознавание и разрушение

С.Д. Кузнецов. Базы данных. Содержание курса. 19 Часть 4. Алгоритмы и методы построения реляционных СУБД (5) Методы управления транзакциями. Сихронизационные блокировки, временные метки и версии Метод временных меток Методы сериализации транзакций на основе поддержки версий объектов базы данных Версионный вариант алгоритма временных меток Версионный вариант двухфазного протокола синхронизационных блокировок Версионно-блокировочный протокол сериализации транзакций для поддержки только читающих транзакций

С.Д. Кузнецов. Базы данных. Содержание курса. 20 Часть 4. Алгоритмы и методы построения реляционных СУБД (6) Средства журнализации и восстановления баз данных Буферизация блоков базы данных в основной памяти и ее связь с журнализацией Управление буферным пулом базы данных Физическая синхронизация Протокол упреждающей записи в журнал и его связь с буферизацией Индивидуальный откат транзакции

С.Д. Кузнецов. Базы данных. Содержание курса. 21 Часть 4. Алгоритмы и методы построения реляционных СУБД (7) Средства журнализации и восстановления баз данных Восстановление после мягкого сбоя Схема восстановления от точки физической согласованности Восстановление физической согласованности базы данных o Теневой механизм o Журнализация постраничных изменений Восстановление базы данных после жесткого сбоя

С.Д. Кузнецов. Базы данных. Содержание курса. 22 Часть 5. Модель данных SQL (1) История стандарта языка SQL. Типы данных. Средства языка SQL для определения и изменения доменов, базовых таблиц и ограничений целостности История стандарта SQL и структура языка Этапы процесса стандартизации языка SQL Структура языка SQL

С.Д. Кузнецов. Базы данных. Содержание курса. 23 Часть 5. Модель данных SQL (2) История стандарта языка SQL. Типы данных. Средства языка SQL для определения и изменения доменов, базовых таблиц и ограничений целостности Типы данных SQL Точные числовые типы, приближенные числовые типы, типы символьных и битовых строк, темпоральные типы, Булевский тип, типы коллекций, анонимные строчные типы, типы, определяемые пользователем, ссылочные типы

С.Д. Кузнецов. Базы данных. Содержание курса. 24 Часть 5. Модель данных SQL (3) История стандарта языка SQL. Типы данных. Средства языка SQL для определения и изменения доменов, базовых таблиц и ограничений целостности Средства определения, изменения и ликвидации доменов Средства определения, изменения и ликвидации базовых таблиц Средства определения и отмены общих ограничений целостности

С.Д. Кузнецов. Базы данных. Содержание курса. 25 Часть 5. Модель данных SQL (4) Базовые возможности выборки данных в языке SQL Общая структура оператора выборки в языке SQL Семантика оператора выборки Ссылки на таблицы раздела FROM o Табличное выражение, спецификация запроса и выражение запросов o Ссылки на базовые, представляемые и порождаемые таблицы Представляемые таблицы, или представления

С.Д. Кузнецов. Базы данных. Содержание курса. 26 Часть 5. Модель данных SQL (5) Базовые возможности выборки данных в языке SQL Логические выражения раздела WHERE Предикат сравнения, предикат between, предикат null, предикат in, предикат like, предикат similar, предикат exists, предикат unique, предикат overlaps, предикат сравнения с квантором, предикат match, предикат distinct Логические выражения раздела HAVING

С.Д. Кузнецов. Базы данных. Содержание курса. 27 Часть 5. Модель данных SQL (6) Базовые возможности модификации баз данных в языке SQL Базовые средства манипулирования данными Оператор INSERT для вставки строк в существующие таблицы Оператор UPDATE для модификации существующих строк в существующих таблицах Оператор DELETE для удаления строк в существующих таблицах

С.Д. Кузнецов. Базы данных. Содержание курса. 28 Часть 5. Модель данных SQL (7) Базовые возможности модификации баз данных в языке SQL Представления, над которыми возможны операции обновления Представления, допускающие применение операций обновления, в стандарте SQL/92 Представления, допускающие применение операций обновления, в стандарте SQL:1999 Раздел WITH CHECK OPTION определения представления Исторический очерк

С.Д. Кузнецов. Базы данных. Содержание курса. 29 Часть 5. Модель данных SQL (8) Базовые возможности модификации баз данных в языке SQL Операции обновления баз данных и механизм триггеров Понятие триггера в SQL:1999 Синтаксис определения триггеров и типы триггеров Выполнение триггеров Триггеры и ссылочные действия

С.Д. Кузнецов. Базы данных. Содержание курса. 30 Часть 5. Модель данных SQL (9) Механизмы авторизации доступа и управления подключениями, сессиями и транзакциями в языке SQL Поддержка авторизации доступа к данным в языке SQL Пользователи и роли Использование идентификаторов пользователей и имен ролей Создание и ликвидация ролей Передача привилегий и ролей Изменение текущих идентификаторов пользователей и имен ролей Аннулирование привилегий и ролей

С.Д. Кузнецов. Базы данных. Содержание курса. 31 Часть 5. Модель данных SQL (10) Механизмы авторизации доступа и управления подключениями, сессиями и транзакциями в языке SQL Управление транзакциями в SQL Порождение транзакций в SQL Уровни изоляции SQL-транзакции Завершение транзакций Транзакции и ограничения целостности Точки сохранения

С.Д. Кузнецов. Базы данных. Содержание курса. 32 Часть 5. Модель данных SQL (11) Механизмы авторизации доступа и управления подключениями, сессиями и транзакциями в языке SQL Подключения и сессии Установление соединений Операторы SQL для управления соединениями o Оператор CONNECT o Оператор SET CONNECTION o Оператор DISCONNECT

С.Д. Кузнецов. Базы данных. Содержание курса. 33 Литература (1) С.Д. Кузнецов. Основы баз данных. Учебное пособие. 2-е издание. М., Бином. Лаборатория знаний, Интернет-университет информационных технологий, 2007 г.

С.Д. Кузнецов. Базы данных. Содержание курса. 34 Литература (2) С.Д. Кузнецов. Базы данных. Модели и языки. М., Бином-Пресс, 2008 г.

С.Д. Кузнецов. Базы данных. Содержание курса. 35 Литература (3) Классика баз данных Сергей Кузнецов. Базы данных. Вводный курс Сергей Кузнецов. Основы современных баз данных

С.Д. Кузнецов. Базы данных. Содержание курса. 36 Литература (4) Дейт К. Дж., Дарвен Х. Основы будущих систем баз данных. Третий манифест. Перевод с английского. М., Янус-К 2004 г.