Организация баз данных (47884)

Посмотреть архив целиком

кафедра компьютерных и информационных технологий





курс лекций


В настоящем курсе рассматриваются вопросы организации баз данных и знаний. Это важная тема, без основательного знакомства с которой, в наше время, невозможно стать квалифицированным специалистом в сфере информационных технологий.

Основное назначение данного курса – систематическое введение в идеи и методы, используемые в современных системах управления базами данных. В курсе не рассматривается какая-либо одна популярная СУБД; излагаемый материал в равной степени относится к любой современной системе. Как показывает опыт, без знания основ теории баз данных трудно на серьезном уровне работать с конкретными системами, как бы хорошо они не были документированы.



Содержание


ЛЕКЦИЯ 1. Понятие СУБД. Функции СУБД 7

1.1 Введение 7

1.2 Понятие БД и СУБД 7

1.3 Уровни абстракции в СУБД. Функции абстрактных данных 9

1.4 Представления 10

1.5 Функции СУБД 11

1.6 Экспертные системы и базы знаний 11

ЛЕКЦИЯ 2. Модели БД 13

2.1 Обзор ранних (дореляционных) СУБД 13

2.2 Системы, основанные на инвертированных списках 13

2.3 Иерархическая модель 14

2.4 Сетевая модель 16

2.5 Основные достоинства и недостатки ранних СУБД 17

ЛЕКЦИЯ 3. Реляционная модель и ее характеристики. Целостность в реляционной модели 18

3.1 Представление информации в реляционных БД 18

3.2 Домены 19

3.3 Отношения. Свойства и виды отношений 20

3.4 Целостность реляционных данных 21

3.5 Потенциальные и первичные ключи 22

3.6 Внешние ключи 22

3.7 Ссылочная целостность 23

3.8 Значения NULL и поддержка ссылочной целостности 24

ЛЕКЦИЯ 4. Реляционная алгебра 25

4.1 Понятие реляционной алгебры 25

4.2 Замкнутость в реляционной алгебре 25

4.3 Традиционные операции над множествами 25

4.4 Свойства основных операций реляционной алгебры 27

4.5 Специальные реляционные операции 28

ЛЕКЦИЯ 5. Вопросы проектирования БД 34

5.1 Понятие проектирования БД 34

5.2 Функциональные зависимости 35

5.3 Тривиальные и нетривиальные зависимости 36

5.4 Замыкание множества зависимостей и правила вывода Армстронга 36

5.5 Неприводимое множество зависимостей 38

5.6 Нормальные формы – основные понятия 38

5.7 Декомпозиция без потерь и функциональные зависимости 39

5.8 Диаграммы функциональных зависимостей 40

ЛЕКЦИЯ 6. Проектирование БД. Нормальные формы отношений 42

6.1 Первая нормальная форма. Возможные недостатки отношения в 1НФ 42

6.2 Вторая нормальная форма. Возможные недостатки отношения во 2НФ 44

6.3 Третья нормальная форма. Возможные недостатки отношения в 3НФ 45

6.4 Нормальная форма Бойса-Кодда 46

ЛЕКЦИЯ 7. Проектирование БД. Нормальные формы отношений (продолжение) 49

7.1 Многозначные зависимости 49

7.2 Четвертая нормальная форма 51

7.3 Зависимости соединения 51

7.4 Пятая нормальная форма 53

7.5 Итоговая схема процедуры нормализации 53

ЛЕКЦИЯ 8. Проектирование БД методом сущность-связь. ER-диаграммы 55

8.1 Возникновение семантического моделирования 55

8.2 Основные понятия метода 55

8.3 Диаграммы ER-экземпляров и ER-типа 56

8.4 Правила формирования отношений 59

8.5 Методология IDEF1 (самостоятельное изучение) 62

ЛЕКЦИЯ 9. Язык SQL 66

9.1 История создания и развития SQL 66

9.2 Основные понятия SQL 66

9.3 Запросы на чтение данных. Оператор SELECT 71

9.4 Многотабличные запросы на чтение (объединения). 75

ЛЕКЦИЯ 10. Язык SQL (продолжение) 77

10.1 Объединения и стандарт SQL2 77

10.2 Итоговые запросы на чтение. Агрегатные функции 80

10.3 Запросы с группировкой (предложение GROUP BY) 80

10.4 Вложенные запросы 82

ЛЕКЦИЯ 11. Язык SQL. (продолжение) 86

11.1 Внесение изменений в базу данных. 86

11.2 Удаление существующих данных (Оператор DELETE) 87

11.3 Обновление существующих данных (Оператор UPDATE) 87

11.4 Определение структуры данных в SQL 88

11.5 Понятие представления. 91

11.6 Представления в SQL. 92

11.7 Системный каталог (самостоятельное изучение) 93

ЛЕКЦИЯ 12. Обеспечение безопасности БД 99

12.1 Общие положения 99

12.2 Методы обеспечения безопасности 100

12.3 Избирательное управление доступом 101

12.4 Обязательное управление доступом 102

12.5 Шифрование данных 102

12.6 Контрольный след выполняемых операций 102

12.7 Поддержка мер обеспечения безопасности в языке SQL 103

12.8 Директивы GRANT и REVOKE 103

12.9 Представления и безопасность 105

ЛЕКЦИЯ 13. Физическая организация БД: структуры хранения и методы доступа 106

13.1 Доступ к базе данных 106

13.2 Кластеризация 108

13.3 Индексирование 108

13.4 Структуры типа Б-дерева 111

13.5 Хеширование 114

ЛЕКЦИЯ 14. Оптимизация запросов 116

14.1 Оптимизация в реляционных СУБД. 116

14.2 Пример оптимизации реляционного выражения 116

14.3 Обзор процесса оптимизации 117

14.4 Преобразование выражений 119

ЛЕКЦИЯ 15. Восстановление после сбоев 123

15.1 Понятие восстановления системы 123

15.2 Транзакции 123

15.3 Алгоритм восстановления после сбоя системы 125

15.4 Параллелизм. Проблемы параллелизма 127

15.5 Понятие блокировки 129

15.6 Решение проблем параллелизма 130

15.7 Тупиковые ситуации 132

15.8 Способность к упорядочению 133

15.9 Уровни изоляции транзакции 134

15.10 Поддержка в языке SQL 135

ЛЕКЦИЯ 16. Технологии СУБД 136

16.1 Распределенные базы данных 136

16.2 Принципы функционирования распределенной БД 136

16.3 Системы типа клиент/сервер 139

16.4 Серверы баз данных 139

ЛЕКЦИЯ 17. Современные постреляционные модели БД 141

17.1 Системы управления базами данных следующего поколения 141

17.2 Ориентация на расширенную реляционную модель 141

17.3 Объектно-ориентированные СУБД 143


  1. Понятие СУБД. Функции СУБД


1.1 Введение

1.2 Понятие БД и СУБД

1.3 Уровни абстракции в СУБД. Функции абстрактных данных

1.4 Представления

1.5 Функции СУБД

1.6 Экспертные системы и базы знаний


    1. Введение


Исторически сложившееся развитие вычислительных систем обусловило необходимость хранения в электронном (машиночитаемом) виде все большего количества информации. Одновременно с совершенствованием и дальнейшим развитием вычислительных систем росли объемы информации, подлежащей обработке и хранению. Сложности, возникшие при решении на практике задач структурированного хранения и эффективной обработки возрастающих объемов информации, стимулировали исследования в соответствующих областях. Задачи хранения и обработки данных были формализованы. Была создана теоретическая база для решения задач такого класса, результатом реализации на практике которой стали системы, предназначенные для организации обработки, хранения и предоставления доступа к информации. Позже такие системы стали называть системами баз данных.

Одновременно с развитием систем баз данных, происходило интенсивное развитие средств вычислительной техники, используемой для работы с большими объемами информации. Вычислительная мощность и, особенно, объемы запоминающих устройств первых вычислительных систем были недостаточны для хранения и обработки информации в объемах, необходимых на практике.

По мере развития систем баз данных, менялись принципы организации данных в них: первоначально данные представлялись на основе иерархической, а в последствии сетевой модели. В конце 1970-х – начале 1980-х годов начали появляться первые реляционные продукты. В настоящее время системы баз данных на основе реляционной модели занимают лидирующее положение, несмотря на заявления многих исследователей о скором переходе к объектно-ориентированным системам. В настоящее время объектно-ориентированные системы, тем не менее, развиваются, хотя темпы их развития и сдерживаются медленным принятием соответствующих стандартов. Кроме того, многие коммерческие реляционные системы приобретают объектно-ориентированные черты. На основании этого, можно предположить, что в будущем объектно-ориентированные системы будут постепенно вытеснять реляционные.

В настоящее время ведутся исследования в следующих направлениях:

  1. дедуктивные системы;

  2. экспертные системы;

  3. расширяемые системы;

  4. объектно-ориентированные системы.

    1. Понятие БД и СУБД


Система баз данных – это компьютеризированная система основная задача которой – хранение информации и предоставление доступа к ней по требованию.

Система баз данных включает в себя (рис. 1.1):

  1. данные, непосредственно сохраняемые в базе данных;

  2. аппаратное обеспечение;

  3. программное обеспечение;

  4. пользователей:

    1. прикладные программисты;

    2. конечные пользователи;

    3. администраторы баз данных.







рис. 1.1 Система баз данных.


      1. Данные.

Данные в базе данных являются интегрированными и, как правило, общими. Понятие интегрированных данных подразумевает возможность представления базы данных как объединение нескольких отдельных файлов данных, полностью или частично не перекрывающихся. Понятие общие подразумевает возможность использования отдельных областей данных, в базе данных несколькими различными пользователями.


Случайные файлы

Файл
146868.rtf
160125.rtf
168842.rtf
47343.rtf
referat.doc




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.