Особенности использования транзакций в распределенных системах

Транзакция – это высокоуровневый механизм синхронизации доступа к ресурсу. Операции, произведённые между началом и концом транзакции её участниками, выполняются либо все, либо ни одна.

Свойства транзакций:

1. Упорядочиваемость – если несколько Т выполняется одновременно, результат выглядит как если бы они выполнялись последовательно.

2. Неделимость – процессы, не участвующие в транзакции, не видят её промежуточные результаты.

3. Постоянство – после фиксации (завершения) транзакции никакой сбой не отменяет её результат.

Реализация транзакции:

1. Участники транзакции используют индивидуальное рабочее пространство, в котором происходят все изменения до фиксации.

2. Перед изменением любого блока данных заносится запись об изменении в журнал регистрации.

3. Запись включает номер транзакции, имя файла, имя блока, старые и новые значения. При прерывании транзакции по журналу делается откат.

В распределенных системах используется протокол для фиксации транзакции.

Один из процессов выбирается в качестве координатора.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: