Главная » 2017 » Сентябрь » 17 » Расписание (СУБД)
15:53
Расписание (СУБД)
[править | править вики-текст]
Материал из Википедии — свободной энциклопедии
Текущая версия (не проверялась)


Перейти к: навигация, поиск

У этого термина существуют и другие значения, см. Расписание (значения).
Расписанием называется упорядоченная последовательность действий, предпринимаемых в процессе выполнения одной или нескольких транзакции.

Содержание
 [скрыть] 

1 Последовательное расписание

1.1 Пример

2 Конфликт

2.1 Неконфликтные пары действий
2.2 Конфликтные пары действий
2.3 Допустимые перестановки действий различных транзакций

3 Условно-последовательное расписание

3.1 Пример

Последовательное расписание[править | править вики-текст]
Расписание последовательно, если оно подразумевает выполнение всех действий одной транзакции, а затем всех действий другой транзакции, и т.д.
Пример[править | править вики-текст]
В приведённой таблице отражены транзакции T1 и T2, а также изменения переменных, которые эти транзакции затрагивают.

T1
T2
A
B

25
25

READ(A,t)

t:=t+100

WRITE(A,t)

125

READ(B,t)

t:=t+100

WRITE(B,t)

125

READ(A,s)

s:=s*2

WRITE(A,s)
250

READ(B,s)

s:=s*2

WRITE(B,s)

250

Конфликт[править | править вики-текст]
Пара последовательных действий в расписании считается конфликтной, если изменение взаимного порядка их выполнения оказывает влияние на поведение хотя бы одной из транзакций.
Обозначим действия транзакции: ri(X), wi(X), где r - операция чтения, w - операция записи, i - номер транзакции, X - элемент базы данных.
Неконфликтные пары действий[править | править вики-текст]

ri(X);rj(Y)
ri(X);wj(Y) при X≠Y
wi(X);rj(Y) при X≠Y
wi(X);wj(Y) при X≠Y

Конфликтные пары действий[править | править вики-текст]

Два последовательных действия одной транзакции, например ri(X);ri(Y)
Две операции записи значения одного элемента базы данных, выполняемых разными транзакциями: wi(X);wj(X)
Последовательные операции записи и чтения одного и того же элемента базы данных разными транзакциями: ri(X);wj(X)

Допустимые перестановки действий различных транзакций[править | править вики-текст]
Перестановки действий различных транзакций допустимы, если:

Они затрагивают разные элементы базы данных.

или

Ни одно из этих действий не связано с операцией записи данных.

Условно-последовательное расписание[править | править вики-текст]
Расписание называется условно-последовательным, если результат его реализации оказывается аналогичным результату реализации последовательного расписания. Смотри Граф предшествования.
Пример[править | править вики-текст]

T1
T2
A
B

25
25

READ(A,t)

t:=t+100

WRITE(A,t)

125

READ(A,s)

s:=s*2

WRITE(A,s)
250

READ(B,t)

t:=t+100

WRITE(B,t)

125

READ(B,s)

s:=s*2

WRITE(B,s)

250


Источник — «https://ru.wikipedia.org/w/index.php?title=Расписание_(СУБД)&oldid=53712394»
Категория: СУБДСкрытые категории: Википедия:Изолированные статьи/кольцо2Википедия:Изолированные статьи (тип: не указан)
Просмотров: 336 | Добавил: oooo_81 | Рейтинг: 0.0/0
Всего комментариев: 0
avatar