Показать сообщение отдельно
  #7  
Старый 24.09.2009, 15:22
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,211
По умолчанию Сравнение информации отмены и данных повторного выполнения



Сравнение информации отмены и данных повторного выполнения

Информация отмены (undo data) и данные повторного выполнения (redo data) кажутся на первый взгляд похожими, но цели, которым они служат разные. Информация отмены требуется в ситуации, когда необходимо отменить изменение при откате или для обеспечения целостности чтения (создается старый образ блока с выбираемыми данными). Журнальные данные (redo data) требуются, когда необходимо снова повторить изменения после потери данных, произошедшей по какой-либо причине.

Процесс фиксации влечет за собой проверку того, что изменения транзакции были записаны в журнальный файл (redo log file), который как постоянное место хранения находится на диске в отличие от журнального буфера, располагаемого в оперативной памяти. Кроме того, журнал обычно мультиплексируется, и на диске хранится несколько копий данных повторного выполнения. Даже если изменения еще не записаны в файлы данных, в которых на самом деле располагаются блоки таблицы, вполне достаточно того, что изменения записаны в журнальный файл.


Отключение подачи электроэнергии, если оно происходит как раз перед занесением измененных данных в файлы данных, не вызывает проблемы, так как транзакция была зафиксирована. Когда система снова запускается, она может накатить вперед по журнальным записям операции, результаты которых не были еще отражены в файлах данных в момент отключения подачи электроэнергии.
__________________
Телеграм чат
Ответить с цитированием