Автор: Пользователь скрыл имя, 11 Февраля 2011 в 13:46, контрольная работа
Система управления базами данных (СУБД) – это система программного обеспечения, позволяющая обрабатывать обращения к базе данных, поступающие от прикладных программ конечных пользователей. Системы управления базами данных позволяют объединить большие объёмы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.
1. Понятие системы управления базами данных (СУБД). Архитектура СУБД. Однопользовательские и многопользовательские СУБД. Стр.2
1.1 Понятие системы управления базами данных. Стр.2
1.2 Архитектура СУБД. Стр.6
1.3 Однопользовательские и многопользовательские СУБД. Стр.9
2. Методы защиты информации: организационно-административные и организационно-технические. Стр.10
2.1 Организационно-административные. Стр.11
2. Организационно-технические. Стр.11
Заключение. Стр.13
Список литературы. Стр.14
Содержание
1.1 Понятие системы управления базами данных. Стр.2
1.2 Архитектура СУБД. Стр.6
1.3 Однопользовательские
и многопользовательские СУБД. Стр.9
2.1 Организационно-
Заключение. Стр.13
Список литературы.
Стр.14
I. Понятие системы управления базами данных (СУБД). Архитектура СУБД. Однопользовательские и многопользовательские СУБД.
1.1 Понятие системы управления базами данных
Система управления базами данных (СУБД) – это система программного обеспечения, позволяющая обрабатывать обращения к базе данных, поступающие от прикладных программ конечных пользователей. Системы управления базами данных позволяют объединить большие объёмы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.
Современные СУБД – это многопользовательские системы управления базой данных, которые специализируются на управлении массивом информации одним или множеством одновременно работающих пользователей. Они имеют развитый пользовательский интерфейс, который позволяет вводить и модифицировать информацию, выполнять поиск и представлять информацию в графическом или текстовом режиме, дают возможность включать звуковые фрагменты и даже видеоклипы. СУБД обеспечивают правильность, полноту и непротиворечивость данных, а также удобный доступ к ним.
Простота использования СУБД позволяет создавать новые базы данных, не прибегая к программированию, а пользуясь только встроенными функциями. К числу функций СУБД принято относить следующие:
То
свойство, что каждая транзакция начинается
при целостном состоянии БД и
оставляет это состояние
С управлением транзакциями в многопользовательской СУБД связаны важные понятия сериализации транзакций и сериального плана выполнения смеси транзакций. Под сериализаций параллельно выполняющихся транзакций понимается такой порядок планирования их работы, при котором суммарный эффект смеси транзакций эквивалентен эффекту их некоторого последовательного выполнения. Сериальный план выполнения смеси транзакций - это такой план, который приводит к сериализации транзакций. Понятно, что если удается добиться действительно сериального выполнения смеси транзакций, то для каждого пользователя, по инициативе которого образована транзакция, присутствие других транзакций будет незаметно (если не считать некоторого замедления работы по сравнению с однопользовательским режимом).
Существует
несколько базовых алгоритмов сериализации
транзакций. В централизованных СУБД
наиболее распространены алгоритмы, основанные
на синхронизационных захватах объектов
БД. При использовании любого алгоритма
сериализации возможны ситуации конфликтов
между двумя или более
Понятно, что в любом случае для восстановления БД нужно располагать некоторой дополнительной информацией. Другими словами, поддержание надежности хранения данных в БД требует избыточности хранения данных, причем та часть данных, которая используется для восстановления, должна храниться особо надежно. Наиболее распространенным методом поддержания такой избыточной информации является ведение журнала изменений БД.
Журнал
- это особая часть БД, недоступная
пользователям СУБД и поддерживаемая
с особой тщательностью (иногда поддерживаются
две копии журнала, располагаемые
на разных физических дисках), в которую
поступают записи обо всех изменениях
основной части БД. В разных СУБД
изменения БД журнализуются на разных
уровнях: иногда запись в журнале
соответствует некоторой
Во всех случаях придерживаются стратегии "упреждающей" записи в журнал (так называемого протокола Write Ahead Log - WAL). Грубо говоря, эта стратегия заключается в том, что запись об изменении любого объекта БД должна попасть во внешнюю память журнала раньше, чем измененный объект попадет во внешнюю память основной части БД. Известно, что если в СУБД корректно соблюдается протокол WAL, то с помощью журнала можно решить все проблемы восстановления БД после любого сбоя.
Самая простая ситуация восстановления - индивидуальный откат транзакции. Строго говоря, для этого не требуется общесистемный журнал изменений БД. Достаточно для каждой транзакции поддерживать локальный журнал операций модификации БД, выполненных в этой транзакции, и производить откат транзакции путем выполнения обратных операций, следуя от конца локального журнала. В некоторых СУБД так и делают, но в большинстве систем локальные журналы не поддерживают, а индивидуальный откат транзакции выполняют по общесистемному журналу, для чего все записи от одной транзакции связывают обратным списком (от конца к началу).
При мягком сбое во внешней памяти основной части БД могут находиться объекты, модифицированные транзакциями, не закончившимися к моменту сбоя, и могут отсутствовать объекты, модифицированные транзакциями, которые к моменту сбоя успешно завершились (по причине использования буферов оперативной памяти, содержимое которых при мягком сбое пропадает). При соблюдении протокола WAL во внешней памяти журнала должны гарантированно находиться записи, относящиеся к операциям модификации обоих видов объектов. Целью процесса восстановления после мягкого сбоя является состояние внешней памяти основной части БД, которое возникло бы при фиксации во внешней памяти изменений всех завершившихся транзакций и которое не содержало бы никаких следов незаконченных транзакций. Для того, чтобы этого добиться, сначала производят откат незавершенных транзакций (undo), а потом повторно воспроизводят (redo) те операции завершенных транзакций, результаты которых не отображены во внешней памяти.
Для
восстановления БД после жесткого сбоя
используют журнал и архивную копию
БД. Грубо говоря, архивная копия - это
полная копия БД к моменту начала
заполнения журнала (имеется много
вариантов более гибкой трактовки
смысла архивной копии). Конечно, для
нормального восстановления БД после
жесткого сбоя необходимо, чтобы журнал
не пропал. Как уже отмечалось, к
сохранности журнала во внешней
памяти в СУБД предъявляются особо
повышенные требования. Тогда восстановление
БД состоит в том, что исходя из
архивной копии по журналу воспроизводится
работа всех транзакций, которые закончились
к моменту сбоя. В принципе, можно
даже воспроизвести работу незавершенных
транзакций и продолжить их работу
после завершения восстановления. Однако
в реальных системах это обычно не
делается, поскольку процесс
В современных СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных. Стандартным языком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Structured Query Language).
Прежде всего, язык SQL сочетает средства SDL и DML, т.е. позволяет определять схему реляционной БД и манипулировать данными. При этом именование объектов БД (для реляционной БД - именование таблиц и их столбцов) поддерживается на языковом уровне в том смысле, что компилятор языка SQL производит преобразование имен объектов в их внутренние идентификаторы на основании специально поддерживаемых служебных таблиц-каталогов. Внутренняя часть СУБД (ядро) вообще не работает с именами таблиц и их столбцов.
Язык
SQL содержит специальные средства определения
ограничений целостности БД. Опять
же, ограничения целостности
Специальные операторы языка SQL позволяют определять так называемые представления БД, фактически являющиеся хранимыми в БД запросами (результатом любого запроса к реляционной БД является таблица) с именованными столбцами. Для пользователя представление является такой же таблицей, как любая базовая таблица, хранимая в БД, но с помощью представлений можно ограничить или наоборот расширить видимость БД для конкретного пользователя. Поддержание представлений производится также на языковом уровне.
Наконец,
авторизация доступа к объектам
БД производится также на основе специального
набора операторов SQL. Идея состоит
в том, что для выполнения операторов
SQL разного вида пользователь должен
обладать различными полномочиями. Пользователь,
создавший таблицу БД, обладает полным
набором полномочий для работы с
этой таблицей. В число этих полномочий
входит полномочие на передачу всех или
части полномочий другим пользователям,
включая полномочие на передачу полномочий.
Полномочия пользователей описываются
в специальных таблицах-
Обычно современная СУБД содержит следующие компоненты:
Быстрое развитие потребностей применения БД выдвигает новые требования к СУБД: