Книга: Туманов В. Е. «Основы проектирования реляционных баз данных»

Основы проектирования реляционных баз данных

Серия: "Основы информационных технологий"

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

Содержание:

Лекция 1. Информационные системы с базами данных...... 19 Информация, данные, информационные системы...... 19 Информация как социальный ресурс...... 19 Информация и данные...... 20 Определение понятия информации...... 21 Информационные системы...... 22 Итерационная процедура построения информационных систем...... 25 Концепция баз данных...... 26 Основные подходы к обработке информации в автоматизированных информационных системах...... 26 Концепция баз данных...... 29 Системы управления базами данных...... 31 Модели данных...... 31 Понятие о модели данных...... 31 Информационная модель данньх...... 33 Концепция трех схем...... 33 Основные типы моделей и их эквивалентность...... 34 Общие принципы классификации СУБД...... 37 Обзор основных моделей данных...... 38 Иерархическая модель...... 38 Сетевая модель данных...... 40 Модели вычислений...... 44 Лекция 2. Предметная область базы данных и ее модели...... 49 Понятие предметной области...... 50 Информационная модель предметной области базы данных...... 54 Сущности, атрибуты и идентификаторы (ключи) сущности, домены атрибутов...... 54 Отношения, связи...... 56 Подтипы и супертипы...... 57 Диаграммы «сущность-связь»...... 58 Документирование сущностей и атрибутов...... 58 Документирование доменов...... 59 Документирование отношений (связей)...... 59 Документирование супертипов и подтипов...... 61 Функциональная модель предметной области базы данных...... 62 Понятие функциональной модели предметной области базы данных...... 62 Бизнес-модель процессов (иерархия функций системы)...... 63 Модель потока данных...... 65 Модель жизненного цикла сущности...... 67 Набор спецификаций функций системы (требования), описание функций системы через сущности и атрибуты, бизнес-правила...... 68 Общесистемные требования и решения...... 68 Контроль качества результатов анализа предметной области...... 70 Лекция 3. Что такое проектирование баз данных...... 74 Введение...... 75 Что такое проектирование базы данных...... 75 Типовая бизнес-модель процесса проектирования базы данных...... 78 Бизнес-модель процесса проектирования базы данных: сбор и анализ входных данных...... 82 Бизнес-модель процесса проектирования реляционной базы данных: создание логической модели базы данных...... 83 Бизнес-модель этапа проектирования — создание физической модели реляционной базы данных...... 87 Бизнес-модель этапа проектирования — создание физической модели реляционной базы данных: учет влияния транзакций...... 90 Краткое рассмотрение задач создания серверного кода и подготовки скрипта...... 93 Лекция 4. Реляционная модель данных...... 96 Понятие отношения...... 96 Формы представления отношений...... 99 Реляционные операции...... 102 Объединение отношений...... 103 Пересечение отношений...... 103 Разность отношений...... 104 Декартово произведение отношений...... 105 Проекция отношения...... 106 Деление отношений...... 107 Выбор из отношения...... 108 Соединение отношений...... 109 Лекция 5. Функциональные зависимости и реляционные базы данных...... 111 Понятие функциональной зависимости в данных...... 111 Основные классы функциональных зависимостей...... 115 Аксиомы вывода функциональных зависимостей...... 118 Минимальные покрытия множеств функциональных зависимостей...... 124 Лекция 6. Нормальные формы отношений. Создание логической модели реляционной базы данных...... 129 Понятие о логической модели реляционной базы данных...... 129 Нормализация отношений...... 130 Первая нормальная форма...... 134 Вторая нормальная форма...... 136 Третья нормальная форма...... 137 Нормальная форма Бойса-Кодда...... 138 Четвертая нормальная форма...... 140 Пятая нормальная форма...... 142 Лекция 7. Методы проектирования логических моделей реляционных баз данных. Декомпозиция и синтез отношений...... 145 Универсальное отношение...... 145 Декомпозиция схем отношений, свойства соединения без потерь и сохранения ФЗ...... 147 Методы проектирования на основе декомпозиции отношений...... 151 Понятие о методах декомпозиции отношений...... 151 Алгоритм метода декомпозиции отношений...... 152 Методы проектирования на основе синтеза отношений...... 153 Некоторые проблемы метода декомпозиции...... 153 Понятие о методах синтеза отношений...... 154 Алгоритм метода синтеза отношений...... 155 Создание логической модели реляционной базы данных методом декомпозиции: преобразование ER-диаграмм в отношения базы данных...... 160 Пример преобразования ER-диаграмм в отношения базы данных...... 167 Лекция 8. Введение в структурированный язык запросов — SQL...... 171 Введение...... 171 SQL — язык манипулирования данными в реляционной базе данных...... 172 SQL и его история...... 172 Описание основных операторов SQL...... 173 Встроенные функции SQL и их использование в запросах...... 176 Объекты реляционной базы данных...... 184 Иерархия объектов реляционной базы данных...... 184 Основные объекты реляционной базы данных...... 186 Правила определения имен...... 189 Домены и допустимые типы данных...... 191 Допустимые типы данных...... 191 Константы, выражения, системные переменные...... 196 Приложение 1 к лекции 8...... 198 Лекция 9. Создание объектов для хранения данных. Работа с ограничениями...... 200 Создание начальной внутренней схемы реляционной базы данных...... 201 Создание таблиц...... 201 Определение базовых таблиц...... 202 Добавление колонок в таблицы...... 203 Определение типов данных для колонок...... 205 Назначение первичных ключей таблицам...... 207 Задание ограничений NOT NULL на значения колонок...... 210 Создание связывающих таблиц для ситуации разрешения отношений «многие-ко-многим» в логической модели базы данных...... 212 Работа с ограничениями. Добавление ссылочной целостности...... 217 Ограничения и их использование в реляционной базе данных...... 217 Добавление CHECK-ограничения в спецификацию колонки...... 218 Использование опции DEFAULT...... 218 Добавление NOT NULL ограничения в спецификацию колонки...... 218 Добавление ограничения первичного ключа и внешнего ключа...... 220 Добавление ограничения UNIQUE в спецификацию колонки...... 220 Добавление, удаление и блокирование ограничений...... 220 Добавление ограничений ссылочной целостности...... 222 Ссылочная целостность...... 222 Первичные и внешние ключи...... 223 Отношение «родитель-потомок» между таблицами...... 225 Создание таблиц с ограничениями ссылочной целостности...... 226 Особенности манипулирования данными при ограничениях ссылочной целостности...... 227 Циклы зависимых таблиц...... 228 Создание представлений и синонимов. Понятие о внешней схеме...... 230 Представления или виртуальные таблицы...... 230 Синонимы...... 236 Понятие внешней схемы...... 237 Создание первоначальной внешней схемы...... 238 Лекция 10. Создание физической модели базы данных. Учет влияния транзакций...... 241 Введение...... 241 Определение транзакций базы данных...... 243 Понимание типа приложений базы данных...... 244 Спецификация транзакций...... 249 Денормализация...... 249 Понятие о денормализации...... 250 Нисходящая денормализация...... 252 Восходящая денормализация...... 253 Внутритабличная денормализация...... 253 Денормализация методом «разделяй и властвуй»...... 253 Денормализация методом слияния таблиц...... 255 Методы реализации денормализации: Разбиение таблиц базы данных...... 255 Вертикальное разбиение длинных строк...... 256 Длинные строки в таблицах хэширования...... 258 Горизонтальное разбиение таблиц...... 260 Разбиение таблиц и ссылочная целостность...... 262 Лекция 11. Создание физической модели базы данных. Проектирование производительности...... 265 Введение...... 266 Повышение производительности запросов: Индексы...... 266 Индексирование...... 266 Индекс со структурой B-Tree...... 268 Исключительно индексные таблицы...... 271 Параметры индексирования...... 272 О некоторых параметрах проектирования индексов...... 274 Повышение производительности запросов: Секционирование...... 277 Секционирование...... 277 Секционирование по диапазону...... 278 Хэш-секционирование...... 279 Составное секционирование...... 280 Секционирование индексов...... 281 Секционирование представлений...... 284 Повышение производительности запросов: Кластеры...... 286 Лекция 12. Разработка серверного кода...... 294 Введение...... 294 PL/SQL — процедурное расширение языка SQL...... 296 Структура программы на PL/SQL...... 296 Константы, переменные и типы в PL/SQL...... 297 Операторы управления выполнением программы PL/SQL...... 297 Курсоры PL/SQL...... 300 Обработка исключительных ситуаций в PL/SQL...... 301 Создание хранимых процедур и функций...... 304 Определение хранимых процедур и функций в PL/SQL...... 304 Создание хранимых процедур и функций...... 308 Особенности использования процедур и функций в СУБД Oracle...... 310 Создание пакетов PL/SQL...... 313 Создание триггеров PL/SQL...... 317 Лекция 13. Создание физической модели базы данных: Подготовка скрипта для создания базы данных...... 325 Введение...... 325 Средства разграничения доступа в СУБД Oracle...... 326 Создание пользователей и назначение им привилегий...... 328 Создание пользователей...... 328 Назначение привилегий...... 329 Оценка размера базы данных...... 333 Формулы для оценки размера БД...... 333 Пример расчета размера базы данных...... 337 Создание табличных пространств...... 339 Проверка физической модели реляционной базы данных...... 342 Подготовка скрипта создания физической базы данных...... 349 Лекция 14. Проектирование модулей приложений...... 353 Введение...... 353 Анализ функциональной модели предметной области базы данных...... 354 Определение функций...... 356 Отображение функций в модули...... 357 Системные модули...... 362 Размещение логики обработки...... 362 Общие принципы разработки спецификаций модулей...... 364 Проектирование процесса тестирования модулей приложений...... 368 Лекция 15. Введение в оптимизацию запросов...... 373 Языки обработки данных и задача оптимизации обработки данных...... 374 Процедурные языки обработки данных...... 375 Декларативные языки обработки данных...... 376 Оптимизация запросов...... 377 Синтаксическая оптимизация...... 379 Оптимизация, основанная на правилах...... 381 Оптимизация, основанная на вычислении стоимости...... 382 Последовательность шагов оптимизации запросов...... 382 Обзор оптимизатора запросов...... 382 Реляционные операции...... 383 Теоретико-множественные операции...... 384 Специальные реляционные операторы...... 385 Физические операции...... 390 Сортировка и агрегация...... 391 Операции доступа к диску...... 391 Операции соединения...... 393 Другие физические встроенные операции...... 396 Структура плана запроса...... 397 Дерево запроса...... 398 Построение дерева запроса...... 398 Преобразование логики предиката...... 399 Лекция 16. Оптимизация обработки запросов...... 400 Реализация оптимизатора SQLBase...... 400 Статистика базы данных...... 400 Статистика таблиц...... 401 Статистика индексов...... 403 Фактор селективности...... 404 Фактор селективности в случае одного предиката...... 405 Фактор селективности в случае нескольких предикатов...... 407 Использование оптимизатора для оптимизации выполнения запросов...... 408 Анализ запросов с целью повышения скорости их выполнения...... 418 Литература...... 418

Издательство: "Интернет-Университет Информационных Технологий" (2007)

ISBN: 9785955601113

Другие книги схожей тематики:

АвторКнигаОписаниеГодЦенаТип книги
Семакин И.Основы программирования и баз данных УчебникУчебник создан в соответствии с Федеральным государственным образовательным стандартом среднего… — (формат: Твердая глянцевая, 224 стр.) Подробнее...2014
866бумажная книга
И. Г. СемакинОсновы программирования и баз данных. УчебникУчебник создан в соответствии с Федеральным государственным образовательным стандартом среднего… — ACADEMIA, (формат: 60x90/16, 224 стр.) Профессиональное образование Подробнее...2014
886бумажная книга
Коллектив авторовОсновы бизнес-информатикиВ учебнике излагаются базовые положения бизнес-информатики, связанные с организацией, обработкой и… — Санкт-Петербургский государственный университет, электронная книга Подробнее...2014
259электронная книга
Г. Ю. ГромовВведение в реляционные базы данныхВ книге рассматриваются основные понятия баз данных и систем управления ими (СУБД), моделей данных… — БХВ-Петербург, электронная книга Подробнее...2008
183электронная книга
Анатолий ХомоненкоРабота с базами данных в DelphiРассматривается использование средств Delphi 7 для разработки приложений баз данных. Даются понятия баз… — БХВ-Петербург, электронная книга Подробнее...2005
151электронная книга
Анатолий ХомоненкоРабота с базами данных в С++ BuilderРассматривается использование средств C++ Builder для разработки приложений баз данных. Даются понятия баз… — БХВ-Петербург, электронная книга Подробнее...2006
127электронная книга
Девис Е.М.Изучаем PHP и MySQLЕсли вы хотите научиться созданию динамических веб-сайтов, знакомы с основами программирования на HTML, но не… — Символ-Плюс, - Подробнее...2018
1167бумажная книга
Мишель Е. Дэвис и Джон А. ФиллипсИзучаем PHP и MySQLЕсли вы хотите научиться созданию динамических веб-сайтов, знакомы с основами программирования на HTML, но не… — СИМВОЛ-ПЛЮС, (формат: 70x100/16, 448 стр.) Подробнее...2008
1127бумажная книга
Т. В. ТимошокMicrosoft Access 2002. Краткое руководствоПредлагаемое краткое руководство - это обзор основных инструментальных средств пакета Access 2002. Эта книга… — Вильямс, (формат: 84x108/32, 272 стр.) Краткое руководство Подробнее...2004
170бумажная книга

См. также в других словарях:

  • Проектирование баз данных — процесс создания схемы базы данных и определения необходимых ограничений целостности. Содержание 1 Основные задачи проектирования баз данных …   Википедия

  • Реляционная база данных — Реляционная база данных  база данных, основанная на реляционной модели данных. Слово «реляционный» происходит от англ. relation (отношение[1]). Для работы с реляционными БД применяют реляционные СУБД. Использование реляционных баз… …   Википедия

  • Нормальная форма — У этого термина существуют и другие значения, см. Нормальная форма (значения). Нормальная форма  свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным… …   Википедия

  • NULL (SQL) — У этого термина существуют и другие значения, см. NULL. NULL в Системах управления базами данных (СУБД) специальное значение (псевдозначение), которое может быть записано в поле таблицы базы данных (БД). NULL соответствует понятию «пустое поле»,… …   Википедия

Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»