Jump to content

Распределенная транзакция

Распределенная транзакция это транзакция базы данных , в которой участвуют два или более сетевых хоста. Обычно хосты предоставляют транзакционные ресурсы , а менеджер транзакций создает и управляет глобальной транзакцией, охватывающей все операции с такими ресурсами. Распределенные транзакции, как и любые другие транзакции , должны иметь все четыре свойства ACID (атомарность, согласованность, изоляция, долговечность) , при этом атомарность гарантирует результаты «все или ничего» для единицы работы (пакета операций).

Open Group Консорциум поставщиков предложил модель обработки распределенных транзакций X/Open (X/Open XA), которая стала де-факто стандартом поведения компонентов модели транзакций.

Базы данных являются общими транзакционными ресурсами, и часто транзакции охватывают несколько таких баз данных. В этом случае распределенную транзакцию можно рассматривать как транзакцию базы данных , которая должна быть синхронизирована (или обеспечивать свойства ACID ) между несколькими участвующими базами данных , которые распределены по разным физическим местоположениям. Свойство изоляции (I ACID) представляет собой особую проблему для транзакций с несколькими базами данных, поскольку свойство (глобальной) сериализуемости может быть нарушено, даже если каждая база данных предоставляет его (см. также глобальную сериализуемость ). На практике большинство коммерческих систем баз данных используют сильную строгую двухфазную блокировку (SS2PL) для управления параллелизмом , что обеспечивает глобальную сериализуемость, если все участвующие базы данных используют ее.

Распространенным алгоритмом обеспечения правильного завершения распределенной транзакции является двухфазная фиксация (2PC). Этот алгоритм обычно применяется для обновлений, которые могут быть зафиксированы за короткий период времени, от пары миллисекунд до пары минут.

Существуют также долгоживущие распределенные транзакции, например транзакция бронирования поездки, состоящая из бронирования авиабилета, аренды автомобиля и отеля. Поскольку получение подтверждения на бронирование рейса может занять до суток, двухфазная фиксация здесь неприменима, поскольку на это время ресурсы будут заблокированы. В этом случае используются более сложные методы, включающие несколько уровней отмены. Так же, как вы можете отменить бронирование гостиницы, позвонив на стойку регистрации и отменив бронирование, можно спроектировать систему для отмены определенных операций (если только они не завершены необратимо).

На практике долгоживущие распределенные транзакции реализуются в системах на базе веб-сервисов . Обычно в этих транзакциях используются принципы компенсирующих транзакций , оптимизма и изоляции без блокировки. Стандарт X/Open не распространяется на долгоживущие распределенные транзакции. [ нужна ссылка ]

Некоторые технологии, включая Jakarta Enterprise Beans и Microsoft Transaction Server, полностью поддерживают стандарты распределенных транзакций.

См. также

[ редактировать ]
  • «Транзакции веб-сервисов» . Архивировано из оригинала 11 мая 2008 года . Проверено 2 мая 2005 г.
  • «Основы обработки транзакций» . Статья об управлении транзакциями . Архивировано из оригинала 13 июля 2018 года . Проверено 3 мая 2005 г.
  • «Детальное сравнение моделей Enterprise JavaBeans (EJB) и сервера транзакций Microsoft (MTS)» .

Дальнейшее чтение

[ редактировать ]
  • Герхард Вейкум, Готфрид Воссен, Транзакционные информационные системы: теория, алгоритмы и практика параллельного управления и восстановления , Морган Кауфманн, 2002 г., ISBN   1-55860-508-8
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 40f7d6f43dafbc9cdc11dbb5b71b219b__1709692500
URL1:https://arc.ask3.ru/arc/aa/40/9b/40f7d6f43dafbc9cdc11dbb5b71b219b.html
Заголовок, (Title) документа по адресу, URL1:
Distributed transaction - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)