- •Тема 2 Общая характеристика банков данных
- •2.1. Взаимосвязь реального мира, информации и данных.
- •7 1 8
- •2.2. Концептуальная модель данных.
- •2.2.1. Типы записей и типы элементов данных.
- •2.2.2. Типы связей – Pм.
- •2.2.3. Концептуальная модель данных и представления.
- •2.3. Архитектура системы баз данных.
- •Трех уровневая архитектура базы данных.
- •Система управления базами данных (субд).
- •2.4.1. Функции субд. Взаимодействие субд со средой окружения.
- •2.4.2. Администратор базы данных.
- •Структура банка данных.
Система управления базами данных (субд).
2.4.1. Функции субд. Взаимодействие субд со средой окружения.
Определение: СУБД – это совокупность языковых и программных средств, предназначенных для создания, ведения и использования базы данных.
СУБД использует во время своей работы схему и подсистемы, ОС и конкретные прикладные программы.
Рассмотрим последовательность основных действий, реализуемых СУБД.

— Пользовательское приложение А выдает запрос на чтение записи системе управления базами данных. приложение сообщает код пользователя, затребовавшего этот тип данных, и передает в запросе значение ключа записи
— СУБД обращаясь к представления А. используемой пользовательским приложением А, осуществляет в ней поиск описания данных. на которые выдан запрос.
— СУБД, обращаясь к концептуальной схеме, определяет к каким типам записей относятся данные, на которые выдан запрос. Поясним эту связь: физическая организация базы данных является отображением именно концептуальной схемы.
Подсхема ↔ концептуальная схема ↔ описание физической организации базы данных.
— СУБД просматривает описание физической организации базы данных и определяет, какую физическую запись требуется считать.
— СУБД выдает ОС команду чтения требуемой записи
— ОС взаимодействует с физической памятью, в которой хранятся данные.
— Запрошенные данные передаются из внешней памяти в системные буферы
— СУБД выделяет ту логическую запись, которая запрошена прикладной программой
— СУБД передает данные из системных буферов в рабочую область прикладной программы А.
— прикладная программа обрабатывает данные, помещенные в ее рабочую область.
В том числе, когда прикладная программа обновляет запись, осуществляется аналогичная последовательность действий.
Сформулируем, какие функции должна выполнять современная СУБД.
Определение данных.
СУБД должна допускать определения данных, а именно:
Внешнюю схему
Концептуальную схему
Внутреннюю схему
Обработка данных.
СУБД должна уметь обрабатывать запросы пользователя на выборку, изменение, удаление, добавление данных в базу данных. СУБД должна работать с планируемыми и непланируемыми интерактивными запросами.
Безопасность и целостность данных
СУБД должна контролировать пользовательские запросы и пресекать попытки нарушения правил и целостности, определенные администратором базы данных.
Восстановление данных и дублирование
СУБД должна осуществлять контроль над восстановлением данных и дублированием.
Словарь данных
СУБД должна обеспечить функцию словаря данных.
Производительность
СУБД должна выполнять все указанные функции с максимальной возможной эффективностью.
2.4.2. Администратор базы данных.
Администратор данных (АД).- это человек, отвечающий за стратегию и политику принятия решений, связанных с данными предприятия.
Администратор базы данных (АБД). – это человек, обеспечивающий необходимую техническую поддержку выполнения этих решений.
Функции АБД:
Определение концептуальной схемы
Определение внутренней схемы
Взаимодействие с пользователем
Определение правил безопасности и целостности
Определение процедур резервного копирования и восстановления
Управление производительностью и реагирование на изменяющиеся требования.
Рассмотрим перечисленные функции боле подробно.
Определение концептуальной схемы
АД определяет, какие именно данные необходимо сохранять в базе данных, т.е. определяем объект, в которых заинтересовано предприятие. Этот процесс обычно называют логическим (или концептуальным проектированием базы данных). После этого АБД создает концептуальную схему или модель данных. на практике АД и АБД могут быть одним лицом.
Определение внутренней схемы
АБД должен решать, как данные должны быть представлены в хранимой базе данных, т.е. какова должна быть структура внешней памяти для основного хранения информации, резервного копирования, пополнения базы из других организаций и т.д.
Взаимодействие с пользователем
Индивидуальный уровень пользователя обеспечивается путем разработки внешнего представления, которое является проекцией концептуальной модели данных. АБД должен хорошо представлять весь спектр деятельности, который необходимо реализовывать в виде пользовательского интерфейса на клиентской машине.
Определение правил безопасности и целостности
АБД обязан спроектировать системы защиты данных от несанкционированного доступа и повреждений. АБД обязан обеспечить защиту базы данных от:
Кражи информации;
Несанкционированного обновления данных;
Несанкционированного уничтожения данных.
Условия целостности – так называются ограничения, наложенные на определенное множество атрибутов базы данных. Ограничения вводятся для того, что обеспечить минимизацию количества ошибок ввода. Обычно используются возможности СУБД на создание ограничений:
Установка типов данных, которые можно ввести
Верхние и нижние границы атрибута (пример, ввод даты)
Дополнительно к возможностям СУБД используются специально созданные прикладные программы, которые используют более сложные алгоритмы ограничения для конкретных условий. С целостностью базы данных связано также понятие транзакции базы данных.
Транзакция – это блок программы, выполнение которого сохраняет непротиворечивость базы данных. если база данных непротиворечива до выполнения транзакции, то она должна быть остаться непротиворечивой и после ее выполнения. Для этого, чтобы обеспечить выполнение этого условия транзакция должна быть неделимой. Это означает что, либо все действия, связанные с транзакцией выполняются до конца, либо ни одно из них не выполняется. Например, транзакция записи покупки клиентом товара на сумму в 500 $ включает следующие действия:
изменение записи клиента: уменьшение суммы счета клиента на 500 $;
изменение кассовой записи магазина: увеличение сумы на 500 $.
Если какая-либо из 2-х операций не выполняется, то никаких изменений в базу данных не вносятся. Такая транзакция называется прерванной – откат транзакций.
Для обработки транзакций требуется, чтобы СУБД поддерживала запись транзакций для каждого изменения, вносимого в базу данных. один из способов – применение протоколов.
Это значит, что кроме основного файла данных, например R1 , создается промежуточный файл, имеющий те же атрибуты, что и основной файл – ПрR1 – протокольный файл. В него мы пишем все изменения базы. Если система дает отказ до завершения изменений, то информация из ПрR1 не переносятся в R1. если отказа нет, то информация из ПрR1 переносится в R1. происходит фиксация транзакций или коммит.
Определение процедур резервного копирования и восстановления
АБД должен определить и реализовать подходящую схему восстановления, использующую, например периодическую выгрузку (или «дампинг») базы данных на устройство резервного копирования и процедуры загружающие базу данных с последнего дампа.
Управление производительностью и реагирование на изменяющиеся требования.
В ходе работы базы данных возникает необходимость в ее реорганизации, т.е. перенастройке системы. АБД должен обеспечить реорганизацию базы без потери производительности системы.
Приведенный список не является исчерпывающим. Он намечает диапазон обязанностей АБД.
