Обеспечение целостности данных
Проблема целостности состоит в обеспечении правильности данных в базе в любой момент времени. Это касается защиты данных от непреднамеренных ошибок и их предотвращения. Этим проблема целостности отличается от проблемы безопасности, в остальном эти два вопроса тесно соприкасаются. Имеются два основных вида ограничения целостности, которые должны поддерживаться СУБД: структурные ограничения. Эти ограничения во многих случаях задаются функциональными зависимостями и проверяются путем проверки равенства значений соответствующих данных в базе; ограничения реальных значений данных, хранимых в базе. Обычно такие ограничения требуют, чтобы значения поля принадлежали некоторому диапазону значений, либо выражают некоторое арифметическое соотношение между значениями различных полей. Существуют и другие ограничения целостности. Например, ограничения на условия выполнения параллельных операций над данными в базе; ограничения типа старый—новый, когда БД переходит в новое состояние. В общем случае целостность может быть нарушена при сбое оборудования, программной ошибке, ошибке человека-оператора, ошибках в исходных данных и т.п. Рассмотрим примеры различных типов ограничений целостности. 1. Значения первичного ключа любого отношения (файла) должны быть уникальны. 2. Отношение (файл), кроме первичного ключа, может содержать возможные ключи, значения которых должны быть также уникальными. Эти два примера соответствуют структурным ограничениям. 3. В заданном отношении для каждого кортежа между значением поля А и значением поля В должно всегда выполняться условие, что первое больше второго. Ограничение специфицируется специальным выражением. 4. Значения, которые принимает некоторый атрибут, должны быть ограничены заданным диапазоном. Ограничение специфицируется специальным выражением. 5. Для некоторого атрибута (или комбинации атрибутов) может существовать конечный (небольшой по размеру) набор допустимых значений (например, по атрибуту ОБРАЗОВАНИЕ могут быть только значения НАЧАЛЬНОЕ, НЕПОЛНОЕ СРЕДНЕЕ, СРЕДНЕЕ, НЕПОЛНОЕ ВЫСШЕЕ, ВЫСШЕЕ). Ограничение специфицируется специальным выражением при описании данных. 6. Значения некоторого атрибута должны удовлетворять определенному формату. 7. Множество значений одного из атрибутов отношения должно удовлетворять некоторому статистическому условию. Например, конкретное значение не должно превышать более чем в два раза среднее значение. Ограничение реализуется СУБД при контроле выполняемых операций. 8. Множество значений некоторого столбца отношения является подмножеством значений другого столбца этого отношения. Ограничение контролируется при выполнении операций. Рассмотренные примеры 3—8 соответствуют второму виду ограничений — ограничений на значения данных. 9. Требуется ограничить обновление данных в заданном отношении таким образом, чтобы для указанного атрибута имело место в каждом кортеже некоторое соотношение между старым и новым значениями. Чтобы специфицировать подобное ограничение, в языках должны быть предусмотрены возможности реализации ссылки на старое и новое значения. 10. Если транзакция А (транзакция — это разовый прогон некоторой процедуры) и транзакция В выполняют изменения одних и тех же данных в базе, то в случае их параллельного выполнения может быть нарушена целостность данных в базе. В этом случае СУБД должна реализовать специальный режим выполнения параллельных вычислений. Например, транзакция В не может обратиться к данным, пока с ними не закончится работа в транзакции Л. 11. Если транзакция выполняет несколько изменений в БД которые связаны между собой ограничениями целостности, то в этом случае ограничения целостности можно проверять только после выполнения транзакции. Такие ограничения называют отложенными. Рассмотренных примеров достаточно, чтобы создать представление о составе задач, подлежащих решению при проектировании средств обеспечения целостности данных в базе. Основная идея обеспечения ограничений целостности данных заключается в том, чтобы использовать язык ЯМД как средство выражения этих ограничений. Декларация ограничений целостности содержит две части. В первой из них должно быть выражено само ограничение, а во второй — описывается, когда, при каких условиях должна выполняться сама проверка. Языки манипулирования данными реальных систем позволяют в той или иной мере поддерживать если не все, то многие из рассмотренных ограничений целостности.
Обеспечение целостности данных для Access (мало ли он спросит)
В случае если пользователь нарушил эти условия в операциях обновления или удаления данных в связанных таблицах, Access выводит соответствующее сообщение и не допускает выполнения операции. Access автоматически отслеживает целостность данных, если между таблицами в схеме данных установлена связь с параметрами обеспечения целостности. При вводе некорректных данных в связанные таблицы выводится соответствующее сообщение. Access не позволяет создавать связи с параметрами обеспечения целостности в схеме данных, если ранее введенные в таблицы данные не отвечают требованиям целостности.
Если для выбранной связи обеспечивается поддержание целостности, то можно задать режимы каскадного обновления и удаления связанных записей. Структура распределенного банка данных Банк и база данных, расположенные на одном компьютере, называются локальными, а на нескольких соединенных сетями ПЭВМ называются распределенными. Распределенные банки и базы данных более гибки и адаптивны, менее чувствительны к выходу из строя оборудования. Назначение распределенных баз и банков данных состоит в предоставлении более гибких форм обслуживания множеству уда ленных пользователей при работе со значительными объемами информации в условиях географической или структурной разобщенности. Распределенные системы баз и банков данных обеспечивают широкие возможности по управлению сложных многоуровневых и многозвенных объектов и процессов. (тут начинается муть) В системах обработки распределенных баз данных база данных распределена по множеству компьютеров. На рисунке 1 база данных (или часть ее) хранится на всех n компьютерах. Как показано на рисунке, компьютеры 1, 2 и n обрабатывают и приложения, и базу данных, а компьютер 3 обрабатывает только базу данных. Пунктирная линия, которой обведены файлы, означает, что база данных включает в себя все сегменты, хранящиеся на всех п компьютерах. Эти компьютеры могут физически размещаться в одном помещении, а могут – в разных концах планеты. ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|