Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие.doc
Скачиваний:
153
Добавлен:
02.05.2014
Размер:
1.63 Mб
Скачать

2.4.3. Промежуточное восстановление

Если появляется сбой из-за ошибки пользователя или системно-прог­раммной ошибки, то выполняемый в это время ЛЭР полностью ис­ключается и возникает необходимость в перезапуске системы с некото­рого предшеству­ющего момента времени. Для этого в системе органи­зуют контрольные точ­ки. Контрольная точка для осуществления от­ката ЛЭР и является грани­цей, с которой перезапускают систему. Мо­мент возникновения сбоя нельзя заранее предугадать, поэтому периодически необходимо устанавливать кон­трольные точки

Копия

Контрольная точка 1-го типа Контрольная точка 2-го типа

Откат

Раскрутка

Рис.36.Промежуточное и длительное восстановление.

Существует два типа контрольных точек.

1. Условием установления контрольной точки является отсутст­вие в данный момент времени выполняющихся ЛЭР. Если такой эле­мент существу­ет, то начало выполнения новых ЛЭР задерживается и после завершения выполняющегося элемента устанавливается кон­трольная точка. При появле­нии сбоя осуществляется откат в состоя­ние, соответствующее последней установленной контрольной точке. Раскрутку ЛЭР, завершившегося между контрольной точкой и точкой появления сбоя, осуществляют с использова­нием системного журнала.

2. Контрольная точка устанавливается при наличии выполняю­щихся ЛЭР. В данном случае в контрольной точке фиксируют состоя­ние рабочих областей всех выполняющихся ЛЭР. При появлении сбоя осуществляется от­кат в состояние контрольной точки. Для ЛЭР, который вы­полнялся в момент уста­новления контрольной точки, откат осущест­вляется до его начального состояния и далее аналогично п.1.

2.4.4. Длительное восстановление

Если при возникновении сбоя БД разрушается, операция отката ЛЭР в начальное состояние становится бессмысленной. Для восстановления БД после таких сбоев периодически делают копии всей БД. С помощью такой копии воспроизводят состояние БД на момент снятия копии, а затем, используя системный журнал, осуществляют раскрутку до последней перед сбоем контрольной точки (рис.4.1).

Восстановление с помощью копии связано с большими затратами времени на операцию получения копии. Кроме того, появляются трудности, связанные с временной неработоспособностью системы.

2.5. Математический аппарат, используемый при работе с реляционной базой данных

Для выполнения операций над отношениями используется реляционная алгебра, основателем которой является Э.Ф.Кодд. Все множество операций реляционной алгебры можно раз­делить на две группы: теоретико-множественные и специальные. В первую группу входят 4 операции. Три первые теоретико-множествен­ные операции являются бинарными, то есть в них участвуют два отношения и они требуют эквивалентных схем исходных отношений.

2.5.1. Теоретико-множественные операции реляционной алгебры

Объединением двух отношений называется отношение, содержащее множество кортежей, принадлежащих либо первому, либо второму исходным отношениям, либо обоим отношениям одновременно.

Пусть заданы два отношения R1 = { r1 } , R2 = {r2}, где r1 и r2 — соответственно кортежи отношений R1 и R2, то объединение

R3 = R1 U R2 = { r r  R1 v r  R2}. Здесь r — кортеж нового отношения, v -операция логического сложения «ИЛИ».

Пересечением отношений называется отношение, которое содержит множество кортежей, принадлежащих одновременно и первому и второму отношениям R1 и R2.

R4 = R1 Ç R2 ={ г | r Î R1Ù r Î R2 } здесь Ù — операция логического умножения (логическое «И»).

Разностью отношений R1 и R2 называется отношение, содержащее множество кортежей, принадлежащих R1 и не принадлежащих R2:

R5 = R1 \ R2 = { r | r Î R1 Ù r Ï R2}

Следует отметить, что операции Объединение и Пересечение явля­ются коммутативными операциями, то есть результат операции не зависит от порядка аргументов в операции. Операция же Разности является принципиаль­но несимметричной операцией, то есть результат операции будет различным для разного порядка аргументов. Кроме перечисленных трех теоретико-множественных операций в рамках реля­ционной алгебры определена еще одна теоретико-множественная операция — расширенное декартово произведение. Эта операция не накладывает никаких дополнительных условий на схемы исходных отношений, поэтому операция рас­ширенного декартова произведения, обозначаемая R1 Ä R2, допустима для лю­бых двух отношений. Но прежде чем определить саму операцию, введем допол­нительно понятие конкатенации, или сцепления, кортежей

Сцеплением, или конкатенацией, кортежей с = <c1,c2 , ..., c n> и q = <q1,q 2, …, q m> называется кортеж, полученный добавлением значений второго в конец перво­го. Сцепление кортежей с и q обозначается как (с , q).

(с, q) = < c1, c 2,….. c n , q 1, q 2, …. , q m>

Здесь n — число элементов в первом кортеже с, m — число элементов во втором кортеже q.

Все предыдущие операции не меняли степени или арности отношений — это следует из определения эквивалентности схем отношений. Операция декартова произведения меняет степень результирующего отношения.

Расширенным декартовым произведением отношения R1 степени n со схемой Sri = (A1, А2, .. , An) и отношения R2 степени m со схемой Sr2 = (В1, В2, . , Вm) называется отношение R3 степени n+m со схемой SR3 = (А1, А2,. , An, В1, В2, .., Вm), содержащее кортежи, полученные сцеплением каждого кортежа r отношения R1 с каждым кортежем q отношения R2. То есть если R1 = { r }, R2 = { q }, то R1 Ä R2 = {(r, q) ½r Î R1 Ù q Î R2}.

Очень часто операция расши­ренного декартова произведения используется для получения некоторого отношения, которое характеризует все возможные комбинации между элементами отдельных множеств. Однако самостоятельного значения результат выполнения операции обычно не имеет, он участвует в дальней­шей обработке. Группа теоретико-множественных операций избыточна, так, например, опера­цию пересечения можно заменить сочетанием операций объединения и вычитания.

(R1 U R2) \ (R1 \ R2) \ (R2 \ R1).

Однако это достаточно сложная формула, и именно поэтому все три теоретико-множественные операции вошли в базовый набор операций реляционной алгебры.

Соседние файлы в предмете Базы данных