Результаты (
русский) 2:
[копия]Скопировано!
14,3 Исполняющее СДЕЛОК
Обработка транзакций может быть централизованной или распределенной. В централизованной обработки транзакций, менеджер одной транзакции (TM) управляет всеми операциями. Мы выделяем два различных способа осуществления таких операций. Одна из реализаций использует личное рабочее пространство для каждой транзакции. Метод состоит из следующих этапов:
1. В начале, выделить по сделке личное рабочее пространство и скопировать все файлы или объекты , которые ему необходимо.
2. Чтение / запись данных из файлов или выполнить соответствующую операцию на объектах. Обратите внимание , что изменения будут происходить в частном рабочем пространстве только.
3. Если все операции успешно завершены, а затем зафиксировать транзакцию путем записи обновления в постоянной записи. В противном случае, транзакция будет прервана, которая осуществляется не писать обновлений. Исходное состояние будет оставаться неизменным.
Другой способ реализации транзакций использует журнал записи вперед. Журнал записи заранее записывает текущее состояние транзакции перед обновлением объектов. Содержание журнала является
(идентификатор транзакции, номер блока диска, старое значение, новое значение)
По предположению, эти журналы не восприимчивы к отказам. Если транзакция совершается, то журнал отбрасывается. С другой стороны, если транзакция прерывается, то журнал используется для отмены изменений и восстановления базы данных в согласованное состояние. Журнал также может быть использован , чтобы повторно запустить транзакцию после сбоя.
Реализация распределенных транзакций намного сложнее. Здесь каждый компьютер имеет локальный TM, и эти TMs взаимодействуют с менеджерами данных , которые географически распределены (рис 14.2). Проблема атомной приверженности становится сложным , когда один ТМ терпит неудачу , но остальные продолжают работать в обычном режиме. Таким образом, в сделке (х ≔ х - 100; у ≔ у + 100) , где х и у принадлежат к разным базам данных, если происходит сбой TM после завершения операции х ≔ х - 100, то база данных становится непоследовательным.
переводится, пожалуйста, подождите..