13.1. Введение#

13.1. Введение

13.1. Введение

Tantor SE предоставляет богатый набор инструментов для разработчиков для управления параллельным доступом к данным. Внутренне, согласованность данных поддерживается с помощью многоверсионной модели (Многоверсионный контроль параллелизма, MVCC). Это означает, что каждый SQL-запрос видит образ данных (версию базы данных), каким он был некоторое время назад, независимо от текущего состояния базовых данных. Это предотвращает просмотр несогласованных данных, созданных параллельными транзакциями, выполняющими обновления в одних и тех же строках данных, обеспечивая изоляцию транзакций для каждой сессии базы данных. MVCC, отказываясь от методологий блокировки традиционных баз данных, минимизирует конфликты блокировки, чтобы обеспечить приемлемую производительность в многопользовательских средах.

Основным преимуществом использования модели MVCC контроля параллелизма вместо блокировки является то, что в MVCC блокировки, полученные для запроса (чтения) данных, не конфликтуют с блокировками, полученными для записи данных, поэтому чтение никогда не блокирует запись, а запись никогда не блокирует чтение. Tantor SE поддерживает это гарантирует даже при предоставлении самого строгого уровня изоляции транзакций с использованием инновационного уровня Serializable Snapshot Isolation (SSI).

В Tantor SE также доступны средства блокировки на уровне таблицы и строки для приложений, которым обычно не требуется полная изоляция транзакций и предпочитают явно управлять конфликтными точками. Однако правильное использование MVCC обычно обеспечивает лучшую производительность, чем блокировки. Кроме того, определенные приложением рекомендательные блокировки предоставляют механизм для получения блокировок, не связанных с одной транзакцией.