Транзакция (информатика): различия между версиями

м (→‎Пример транзакции: оформление)
Первые коммерческие СУБД (к примеру, IBM [[DB2]]), пользовались исключительно блокировкой доступа к данным для обеспечения свойств ACID. Но большое количество блокировок приводит к существенному уменьшению производительности. Есть два популярных семейства решений этой проблемы, которые снижают количество блокировок:
* [[журнализация изменений]] (write ahead logging, WAL);
* [[механизм теневых страниц]] (shadow paging)<ref>[http://zeus.sai.msu.ru:7000/database/articles/aries/ Семейство алгоритмов ARIES<!-- Заголовок добавлен ботом -->]{{deadlink}}</ref>.
В обоих случаях блокировки должны быть расставлены на всю информацию, которая обновляется. В зависимости от уровня изоляции и [[имплементация|имплементации]], блокировки записи также расставляются на информацию, которая была прочитана транзакцией.