- •Учебное пособие для подготовки к экзамену по дисциплине «базы данных»
- •1. Этапы развития баз данных. Принципы их работы.
- •Базы данных. Предпосылки возникновения баз данных.
- •Основная терминология.
- •2. Архитектура баз данных. Процесс прохождения пользовательского запроса.
- •Процесс прохождения пользовательского запроса
- •3. Пользователи баз данных.
- •Администраторы данных и администраторы баз данных
- •Разработчики баз данных.
- •Пользователи
- •4. Модели данных. Классификация.
- •Объектные модели данных
- •Модели данных на основе записей
- •Физические модели данных
- •Концептуальное моделирование
- •5. Этапы разработки информационной структуры базы данных
- •6. Реляционная модель данных. Основные понятия и определения.
- •Альтернативная терминология
- •Свойства отношений
- •Виды отношений
- •Основные виды связей
- •7. Первичные и внешние ключи. Непротиворечивость и целостность данных
- •Средства поддержки целостности данных (см. Dcl sql и т.Т.)
- •Реляционная алгебра
- •Выборка (или ограничение)
- •Проекция
- •Декартово произведение
- •Объединение
- •Разность
- •Операция соединения
- •Пересечение
- •Деление
- •Принципы нормализации. Описание предметной области. Нормальные формы.
- •Модель «Сущность-связь». Er - модель. Типы связей: «один к одному», «многие к одному», «один ко многим», «многие ко многим»
- •Язык sql, его достоинства. Классификация операторов sql
- •Успех sql принесли следующие его достоинства:
- •Классификация операторов sql
- •Типы данных sql. Оператор выбора select
- •Скалярные операторы
- •Оператор выбора select. Формирование запросов из базы данных
- •Примеры запросов
- •Агрегатные функции, вложенные запросы в операторе выбора.
- •Операторы манипулирования данными
- •Команда insert
- •Values ('Иванов и.И.', 546237);
- •Insert into t1 (fio, pasport) values ('Иванов и.И.', 546237);
- •Insert into t1 (fio) values ('Петров п.П.');
- •Команда update
- •Команда delete
- •Работа с триггерами
- •Модели "Клиент-сервер" в технологии баз данных
- •Работа технологии "клиент-сервер"
- •Модели транзакций. Свойства. Способы завершения Поддержка транзакций
- •Улучшенные модели транзакций
- •Модель вложенных транзакций
- •Эмуляция механизма вложенных транзакций с помощью точек сохранения
- •Хроники
- •Модель многоуровневых транзакций
- •Динамическая реструктуризация
- •Модели рабочих потоков
- •Журнал транзакций. Восстановление после сбоев. Назначение атрибутов пользователей
- •Контроль сеансов доступа к данным
- •Уровни защиты бд
- •Виды привилегий
- •Привилегии доступа к объектам
- •Методы восстановления
- •Метод восстановления с использованием отложенного обновления
- •Метод восстановления с использованием немедленного обновления
- •Защита информации в базах данных
- •Контрмеры – компьютерные средства контроля
- •Архитектура субд. Перспективы развития баз данных и субд
- •Традиционная двухуровневая архитектура "клиент-сервер"
- •Трехуровневая архитектура
- •Субд для хранилища данных
- •Требования к субд для хранилища данных
- •Высокая производительность загрузки данных
- •Возможность обработки данных во время загрузки
- •Наличие средств управления качеством данных
- •Высокая производительность запросов
- •Широкая масштабируемость по размеру
- •Масштабируемость по количеству пользователей
- •Возможность организации сети хранилищ данных
- •Наличие средств администрирования хранилища
- •Поддержка многомерного интегрированного анализа
- •Расширенный набор функциональных средств запросов
- •Параллельные субд
- •Интерактивная аналитическая обработка данных (olap)
- •Литература, рекомендуемая при самоподготовке
2. Архитектура баз данных. Процесс прохождения пользовательского запроса.
В процессе научных исследований посвященных тому, как должна выглядеть БД предлагались различные способы реализации. Самым жизненным оказалась 3-х уровневая модель БД:
Уровень внешних моделей – самый верхний уровень, где каждая модель имеет своё видение данных. Этот уровень определяет точку зрения на БД отдельных приложений, причём каждое приложение ведёт и обрабатывает только те данные, которые ему необходимы.
Например: Система распределения работ использует сведения о квалификации сотрудников, но ее интересуют сведения об окладе, дом телефоне, разряде и т.д. И наоборот, имея эти сведения используются в подсистеме отдела кадров.
Концептуальный уровень – центральное или управляющее звено. Здесь БД представлена в наиболее общем виде, который определяет данные, используемые всеми приложениями. Практически концептуальный уровень отражает обобщённую модель предметной области, для которой и создавалась база данных. Как любая модель, концептуальная модель отображает только те данные, которые с точки зрения обработки являются существенными.
Физический уровень. Это данные, расположенные в файлах или страничных структурах или на внешних носителях.
Основное назначение 3-х уровневой архитектуры – независимость работы в БД от данных, позволяющая каждому уровню существовать независимо от изменений, происходящих на более низких уровнях.
Логическая независимость от данных означает защищенность внешних схем от изменений в концептуальной схеме. Работа конечных пользователей не изменится при появлении в концептуальной схеме новых сущностей, атрибутов, связей, если только эти изменения не касаются их непосредственно.
Физическая независимость от данных означает защищенность концептуальной схемы от изменений в физической схеме. Может быть выбрана другая СУБД, может измениться файловая система, устройства хранения информации, индексирование и т.п., но при этом концептуальная модель не изменится.
Процесс прохождения пользовательского запроса
2
1 3
12 4
11 БМД
5
10 8 6
9
7
Пользователь посылает запрос на получение данных из БД;
Анализ прав пользователя и внешней модели данных: соответствие данного пользователя, подтверждение или запрет на доступ к запрашиваемым данным;
3,4) В случае запрета на доступ к данным, СУБД сообщит пользователю об этом (12) и прекратит процесс обработки данных. В противном случае СУБД определит часть концептуальной модели, которую затрагивает запрос пользователя;
5) СУБД получает информацию о запрошенной части концептуальной модели;
6) СУБД запрашивает информацию о местоположении данных на физическом уровне;
7) В СУБД возвращается информация о местоположении данных в терминах ОС;
8) СУБД подаёт запрос ОС на предоставление необходимых данных, используя средства ОС;
9) ОС осуществляет перекачку информации из устройств хранения данных и пересылает её в системный буфер;
10) ОС оповещает СУБД об окончании пересылки данных;
11) СУБД выбирает из доставленной информации, находящейся в системном буфере, только то, что необходимо пользователю и пересылает эти данные в рабочую область пользователя.
12) Подтверждение окончания обработки данных (успешное или не успешное).