Восстанавливаемость, согласованность и эффективность баз данных
Свойство безопасности и секретности баз данных
Под безопасностью данных понимается защита от непреднамеренногодоступа к данным, идентификации и разрушении. Под секретностью данных понимается защита от преднамеренного доступа, модификации и разрушения.
При решении вопросов защиты данных необходимо:
1.Определить права доступа отдельных пользователей к определенным группам данных и ограничений на характер операций, выполняемых пользователем с этими данными. Возможны следующие уровни доступа к данным:
1) Неограниченный доступ ко всем отношениям для всех типов операций.
2) Запрет на доступ к любым частям отношения для всех типов операций.
3) Доступ к любой части отношения, но без права изменения ее содержимого (только просмотр).
4) Доступ к любой части отношения, но с правом изменения значений заданного перечня атрибутов: A1…An.
5) Неограниченный доступ только к одному кортежу отношения для всех типов операций.
6) Доступ только к одному кортежу отношения без права изменения содержимого этого кортежа.
7) Неограниченный доступ к атрибутам A1A2…Ar отношения для всех типов операций и запрет доступа к остальным атрибутам отношения.
8) Доступ к атрибутам A1A2…Ar отношения без права изменения их значений и запрет доступа к остальным атрибутам отношения.
9) Разрешить доступ к атрибутам A1A2…Ar применяя вычислительные операторы без права изменения их самих.
10) Доступ к данным, но в ограниченном времени (от t1 до t2) или дате.
2.Организовать систему контроля доступа к данным.
3.Тестирование всех вновь создаваемых средств защиты данных.
4.Периодическое проведение проверок правильности функционирования данных и т.п.
Основные методы и приемы защиты данных:
1.Идентификация пользователя, по которой определяется уровень доступа пользователя к данным (пароли, ответы на вопросы или реализация некоторых алгоритмов).
2.Контроль и фиксация попыток нарушения допустимого уровня доступа с последующими штрафными функциями.
3.Использование специальных методов кодирования данных (один из простейших методов – перекомпоновка символов в кортеже, записи, сообщении, другой метод – замена символа или символов другим символом или группой символов этого же или другого алфавита и др.).
4.Защита данных от сбоев в аппаратных или программных средствах: хранение поколений данных (.bak), формирование контрольных точек (промежуточная перезапись).
Восстанавливаемость – это возможность восстановления целостности данных после любого сбоя системы.
Информация, содержащаяся в базе данных, обычно представляет огромную ценность для ее владельца. Поэтому недопустимо, чтобы, например, механические повреждения привели к потере данных. Поэтому, в СУБД должны быть средства восстановления данных после сбоев или отказов. Отказы бывают системными (физический, порча диска и т.п.) и отказы транзакций (сбой программы, т.е., например, целой переменной присвоили логическое значение) и т.д. Способы бывают следующие:
1) Специально разрешенные программы, которые сохраняют информацию о каждой транзакции (транзакция – единовременно выполняемая неделимая последовательность операций над данными, не нарушающая их целостность), что приводит к тому, что в случае отката очередной транзакции, результат действия предыдущего состояния данных сохранен.
2) Сохранение в буфере при выполнении транзакции содержимого неизменяемых файлов (файл - дубликат), если проведена защита от неправильной корректировки данных.
3) Фактическая корректировка данных откладывается до завершения транзакции (вместо этого заносятся в отдельный файл образов).
4) Защита от системных сбоев (отказов) – это периодическое копирование информации на дублирующие носители. Информация, записанная на такой носитель, называется дампом.
Согласованность – свойство базы данных по отношению к некоторой совокупности пользователей, состоит в том, что в любой момент времени база данных реагирует на их запросы одинаковым образом.
Эффективность – возможность использования вычислительных ресурсов в приемлемое для пользователя время на время выполнения приложений базы данных, используя при этом минимальное количество внешней памяти для хранения данных.