Идея
Обсуждение

Переключение в режим READ COMMITTED SNAPSHOT ISOLATION базы данных под управлением MS SQL

Предлагаю рассмотреть возможность переключения базы данных MS SQL в режим READ COMMITTED SNAPSHOT ISOLATION и поставлять ее в составе дистрибутивов в этом режиме:

Изображение удалено.

 

Это повысит отклик системы при использовании транзакций. Например, выборка всех сущностей типа "Контакт" или запрос общего количества "Контактов" в стандартном режиме READ COMMITTED не будет блокироваться, если в другой сессии в базу данных будет параллельно вставлен "Контакт" в  транзакции, которая еще не успела завершиться. Запрос увидит данные в том состоянии, в котором они были до запуска этой транзакции.

 

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

 

Поэтому, скорее всего переключение будет безболезненным.

1 комментарий

Спасибо, Михаил, зафиксировал идею. Поскольку эти свойства может поменять любой, разворачивающий систему локально, это можно воспринимать и как совет. Но предварительно стоит проверить, всё ли будет в порядке с быстродействием и стабильностью при такой настройке. Как минимум, понадобится большее количество памяти на SQL-сервере.

Показать все комментарии