Skip to main content

Що таке рівень ізоляції транзакцій?

Рівень ізоляції транзакцій - це налаштування, яке визначає, наскільки одна транзакція бачить зміни, зроблені іншими, доки ті ще не завершені.

Простіше кажучи, це ступінь «розділення» між паралельними транзакціями. Чим вищий рівень - тим менше конфліктів, але тим нижча продуктивність.

4 рівні ізоляції

У SQL стандарт визначає 4 рівні:

  1. Read Uncommitted - можна бачити навіть непідтверджені зміни інших транзакцій (ризик «брудного читання»).
  2. Read Committed - видно лише зафіксовані дані, але між двома читаннями вони можуть змінитися.
  3. Repeatable Read - те саме читання в межах транзакції повертає однакові дані, але можливі «фантомні рядки» (нові записи, додані іншою транзакцією).
  4. Serializable - максимальна ізоляція; транзакції виконуються так, ніби послідовно. Безпечно, але повільно.

Отже, рівень ізоляції регулює баланс між точністю даних і продуктивністю системи.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.