Протокол 2-ух фазной фиксации
Т1
Т2
Т голосование фиксировать Т1
Т2
. .
: : Тп
транзакция
Т2 да
Прервать Т1
нет Т2
Главная транзакция посылает команду подтранзакции, фиксировать или прервать. Если голосование единогласно, то принимается решение фиксировать и эта команда отправляется подтранзакциям. Если же хотя бы одна подтранзакция обработала с ошибкой, то главная подтранзакция посылает подтранзакциям команду отказ и все данные уничтожаются.
Фрагментация – хранение фрагментов таблицы в разных узлах сети.
Пример:
Категория билетов | Станция | цена | |
Красноярск | |||
Новосибирск | |||
Москва | |||
Владивосток |
Горизонтальная фрагментация таблицы
Разбиение таблицы на фрагменты по строкам выполняется с помощью команды R:=(R(SELECT * FROMR WHERE Город = «Новосибирск»))
Вертикальная фрагментация – разделение таблицы по вертикали (убираются те данные, которые не нужны).