47884 (597365)

Файл №597365 47884 (Организация баз данных)47884 (597365)2016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

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

курс лекций

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

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

  1. Содержание

ЛЕКЦИЯ 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. Данные.

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

      1. Аппаратное обеспечение.

К аппаратному обеспечению системы относятся накопители для хранения информации, вместе с устройствами ввода-вывода, контролерами устройств и т.д.; вычислительная техника, используемая для поддержки работы ПО системы.

      1. Программное обеспечение.

Программное обеспечение является промежуточным слоем между собственно физической базой данных и пользователями системы и называется диспетчером базы данных или системой управления базами данных, СУБД (DBMS). Все запросы пользователей обрабатываются СУБД.

Таким образом, СУБД – это специализированное программное обеспечение, предоставляющее пользователю базы данных возможность работать с ней, не вникая в детали хранения информации на уровне программного обеспечения.

      1. Пользователи.

Прикладные программисты – отвечают за написание прикладных программ, использующих базу данных.

Конечные пользователи – работают с базой данных непосредственно, через рабочую станцию или терминал. Конечный пользователь может получить доступ к базе данных используя соответствующее прикладное ПО.

Администраторы базы данных – технические специалисты, осуществляющие создание БД, технический контроль работы СУБД и др. операции. Администраторы базы данных отвечают за реализацию решений администратора данных. Администратор данных решает, какие данные необходимо хранить в БД, обеспечивает поддержание порядка при обслуживании и использовании хранимых в БД данных.

Функции администратора базы данных:

  1. определение концептуальной схемы. Администратор БД определяет какие именно данные необходимо сохранять в БД. Этот процесс обычно называют логическим (или концептуальным) проектированием БД. После определения содержимого БД на абстрактном уровне, администратор БД создает соответствующую концептуальную схему, с помощью концептуального ЯОД.

  2. Определение внутренней схемы. Администратор БД решает, как данные должны быть представлены в хранимой БД. Этот процесс называют физическим проектированием. После завершения физического проектирования администратор БД с помощью внутреннего ЯОД должен создать соответствующую структуру хранения, а также определить отображение между внутренней и концептуальной схемой.

  3. Взаимодействие с пользователями. Администратор БД обеспечивает пользователей необходимыми им данными. Для этого администратор БД должен написать (или оказать пользователям помощь в написании) необходимых внешних схем. Кроме этого необходимо определить отображение между внешней и концептуальной схемами.

  4. Определение правил безопасности и целостности.

  5. Определение процедур резервного копирования и восстановления.

  6. Управление производительностью и реагирование на изменяющиеся требования.

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

Использование баз данных для хранения информации позволяет организовать централизованное управление данными, что обеспечивает следующие преимущества:

  1. возможность сокращения избыточности;

  2. возможность устранения (до некоторой степени) противоречивости;

  3. возможность общего доступа к данным;

  4. возможность соблюдения стандартов;

  5. возможность введения ограничений для обеспечения безопасности

  6. возможность обеспечения целостности данных;

  7. возможность сбалансировать противоречивые требования;

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

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

Существует 3 уровня архитектуры СУБД (рис. 1.2):

  1. Внутренний уровень - наиболее близкий к физическому хранению. Он связан со способами хранения информации на физических устройствах хранения;

  2. Внешний уровень - наиболее близкий к пользователям. Он связан со способами представления данных для отдельных пользователей;

  3. Концептуальный уровень - является промежуточным между двумя первыми. Этот уровень связан с обобщенными представлениями пользователей, в отличие от внешнего уровня, связанного с индивидуальными представлениями пользователей.

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

Соответственно трем уровням архитектуры выделяют три уровня абстракции данных в СУБД.

      1. Внешний уровень – внешнее представление

Внешний уровень - индивидуальный уровень пользователя. Пользователь может быть как прикладным программистом, так и конечным пользователем с любым уровнем профессиональной подготовки. Каждый пользователь имеет свой язык общения с СУБД. Для программиста - это какой-либо язык программирования, для пользователя - язык запросов или язык, основанный на формах и меню. Любой из этих языков включает подъязык данных, т.е. множество операторов всего языка, связанное только с объектами и операциями баз данных. Т.о. подъязык данных встроен в базовый язык пользователя, который также обеспечивает на связанные с БД возможности.

Характеристики

Тип файла
Документ
Размер
4,23 Mb
Тип материала
Учебное заведение
Неизвестно

Тип файла документ

Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.

Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.

Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6510
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее