WikiDer > Конфликт чтения-записи

Read–write conflict

В Информатика, в области базы данных, конфликт чтения-записи, также известный как неповторимые чтения, является вычислительной аномалией, связанной с чередованием выполнения транзакций.

Учитывая расписание S

В этом примере T1 прочитал исходное значение A и ожидает завершения T2. T2 также считывает исходное значение A, перезаписывает A и фиксируется.

Однако, когда T1 читает из A, он обнаруживает две разные версии A, и T1 будет вынужден прервать, потому что Т1 не знал, что делать. Это неповторимое чтение. Это никогда не могло произойти в последовательном расписании. Строгая двухфазная блокировка (Строгий 2PL) предотвращает этот конфликт.

Пример из реального мира

Алиса и Боб используют веб-сайт для бронирования билетов на конкретное шоу. Остается только один билет на конкретное шоу. Алиса сначала подписывается, чтобы увидеть, что остался только один билет, и считает его дорогим. Алисе нужно время, чтобы решить. Боб регистрируется, находит еще один билет и сразу же заказывает его. Боб покупает и выходит из системы. Алиса решает купить билет, но обнаруживает, что билетов нет. Это типичная конфликтная ситуация чтения-записи.

Смотрите также