Основные свойства БД и СУБД
Основными средствами СУБД, предназначенными для пользователей, являются:
· средства описания структуры базы данных (средства описания структур таблиц, например, в MS Access);
· средства конструирования экранных форм, предназначенных для ввода и просмотра данных;
· средства создания запросов для выборки данных;
· средства формирования отчетов для вывода на печать результатов обработки данных;
· языковые средства и средства разработки приложений (см. п. 2.5.2).
Таким образом, СУБД выполняет роль посредника между пользователями приложений и данными (рис 7.1).
|
|
|
|
Данные
Рис. 7.1. Схема взаимодействия пользователей с БД
Основными свойствами СУБД и баз данных являются:
1. Обеспечение независимости программ от данных, позволяющей сохранить программы при модификации структуры БД.
2. Непротиворечивость данных; целостность БД; возможность многоаспектного доступа.
3. Защита и восстановление данных при аварийных ситуациях, аппаратных и программных сбоях, ошибках пользователя.
4. Защита данных от несанкционированного доступа средствами разграничения доступа для различных пользователей.
5. Наличие языка запросов высокого уровня, ориентированного на конечного пользователя, который обеспечивает вывод информации из БД по любому запросу, и предоставление ее в виде соответствующих отчетных форм, удобных для пользователя.
Поясним свойства 2 - 4. В многопользовательской системе с БД параллельная обработка заключается в предоставлении одновременного доступа к таблицам, полям, записям БД многим пользователям и приложениям. Для этого в сетевых версиях централизованных СУБД существуют специальные механизмы: синхронизации транзакций и управления доступом. Транзакция – это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется, и СУБД фиксирует изменения БД, произведенные этой транзакцией, во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД.
Механизмы синхронизации транзакций основаны на технике блокирования ресурсов. Они позволяют производить обновление данных при параллельной работе пользователей (два пользователя обновляют одну и ту же запись, но разные поля, или один пользователь блокирует строку для обновления, а другой может ее читать). Однако в результате конфликтов между двумя или более транзакциями по доступу к объектам БД возможны тупиковые ситуации, и в таких случаях необходимо выполнять откат (ликвидировать все изменения, произведенные в БД) одной или более транзакций.
Механизмы управления доступом обеспечивают конкретным пользователям операции над БД в рамках тех полномочий, которые им предоставлены. Полномочия заключаются в возможности либо просто считывать, либо еще и изменять, либо и удалять, и создавать объекты БД.
Восстановление данных требуется после аппаратных и программных сбоев.Обычно рассматриваются два возможных вида аппаратных сбоев: мягкие сбои, которые можно трактовать как внезапную остановку работы компьютера (например, аварийное выключение питания) и жесткие сбои, характеризуемые потерей информации на носителях внешней памяти. Примерами программных сбоев могут быть: аварийное завершение работы СУБД (по причине ошибки в программе или в результате некоторого аппаратного сбоя) или аварийное завершение пользовательской программы, в результате которого некоторая транзакция остается незавершенной.
В любом случае для восстановления БД нужно располагать некоторой дополнительной информацией. Наиболее распространенным методом поддержания такой избыточной информации является ведение журнала изменений БД.
Журнал – это особая часть БД, недоступная пользователям СУБД, в которую поступают записи обо всех изменениях основной части БД. При этом придерживаются стратегии «упреждающей» записи в журнал.
При мягком сбое во внешней памяти основной части БД могут находиться объекты, модифицированные транзакциями, не закончившимися к моменту сбоя, и могут отсутствовать объекты, модифицированные транзакциями, которые к моменту сбоя успешно завершились (по причине использования буферов оперативной памяти, содержимое которых при мягком сбое пропадает). Для восстановления сначала производят откат незавершенных транзакций, а потом повторно воспроизводят те операции завершенных транзакций, результаты которых не отображены во внешней памяти.
Для восстановления БД после жесткого сбоя используют журнал и архивную копию БД (полную копию БД к моменту начала заполнения журнала). Восстановление БД состоит в том, что, исходя из архивной копии, по журналу воспроизводится работа всех транзакций, которые закончились к моменту сбоя.
Дата добавления: 2015-08-08; просмотров: 3851;