називається їх виконання по деякому серіального плану.
Серіальний план виконання сукупності транзакцій - це такий спосіб їх виконання, коли результат спільного виконання транзакцій еквівалентний результату деякого послідовного їх виконання.
Методи серіалізациі транзакцій:
Синхронізаційні захвати (блокування) об'єктів БД;
тимчасові мітки об'єктів БД.
Виділяють два основних режиму синхронізаційних захоплень - спільний (захоплення з читання) і монопольний (захоплення по запису) режими. При спільному режимі здійснюється розділяється захоплення, що вимагає лише операцій читання. При монопольному режимі здійснюється неподілюваний захоплення, що вимагає операцій оновлення даних. Найбільш поширеним варіантом реалізації синхронізаційних захоплень є двофазний протокол блокувань 2PL, відповідно до якого виконання транзакції відбувається в два етапи. На першому етапі перед виконанням будь-якої операції транзакція запрошувати і накопичує захвати необхідних об'єктів у відповідному режимі. Після отримання та накопичення необхідних захоплень виконується друга фаза - фіксація змін або відкат з міркувань цілісності даних, а також подальше звільнення захоплень. При побудові серіальних планів допускається суміщення лише захоплень з читання. Більш ефективні плани серіалізациі транзакцій дозволяє будувати застосування «гранулювання» синхронізаційних блокувань. У цьому випадку «гранулюють» об'єкти захоплення (файли, таблиці, сторінки файлу, запису), що дозволяє розширити номенклатуру синхронізаційних режимів захоплень (напр., Спільний режим захоплення файлу з можливістю монопольного захоплення окремих його об'єктів - таблиць, сторінок, записів). Недолік синхронізаційних захоплень - можливість виникнення тупиків. Розпізнавання (автоматичне виявлення) тупиків грунтується на побудові та аналізі графа очікування транзакцій, що складається з вершин-транзакцій і вершин-об'єктів захоплення. Необхідним захватам відповідають дуги, що виходять з вершин-транзакцій до вершин-об'єктів; протилежний напрямок дуг відповідає отриманим захоплень. Цикли (петлі) на графі відповідають тупикових ситуацій. Для виявлення циклів застосовується алгоритм редукції графа, який вимагає постійного оновлення графа очікування транзакцій, що знижує ефективність обробки даних. Для дозволу (руйнування) тупиків використовуються різні алгоритми руйнування тупиків. Такі алгоритми грунтуються на виборі транзакції-жертви, яка тимчасово відкочується для надання можливості завершення операцій іншим транзакцій. В якості такої транзакції вибирається транзакція з найменшим пріоритетом, або та транзакція, яка вимагає найменше витрат на виконання.
Інший, більш простий, метод серіалізациі транзакцій - метод часових міток, відповідно до якого кожної транзакції приписується тимчасова мітка, відповідна моменту початку виконання транзакції. При виконанні операції над об'єктом транзакція «позначає» його своєю влучною і типом операції (читання або зміна). Якщо при цьому другий транзакції потрібен операція над уже позначеним об'єктом, то виконується ряд дій по вирішенню ситуації, що виникла. Застосування методу тимчасових міток викликає більш часті відкати назад транзакцій, ніж при синхронізаційних блокировках. Однак перевагою методу тимчасових міток є відсутність тупиків, а, отже, і відсутність накладних витрат на їх розпізнавання і руйнування [16].
. Технології тиражування (реплицирования) даних
Основна ідея тиражування: користувачі працюють автономно з однаковими (загальними) даними, розтиражованими по локальних баз даних, що забезпечує в силу відсутності необхідності передачі розтиражованих даних максимальну продуктивність використовуваної обчислювальної системи.
Репліка - тиражована копія даних, призначених для загального користування.
При реалізації технології тиражування даних виникає проблема забезпечення узгодженого стану даних, тобто узгодженого стану у всіх репліках кількості і значень загальних даних, а також структури даних.
Рішення проблеми забезпечення узгодженого стану кількості і значень загальних даних грунтується на реалізації одного з двох принципів:
принципу безперервного розмноження оновлень (будь-яке оновлення даних в будь репліці має бути негайно розмножено). Даний принцип реалізується при побудові систем реального часу. Реалізація цього принципу полягає в тому, що будь-яка транзакція вважається успішно завершеною, якщо вона успішно завершена у всіх репліках. На практиці реалізації даного принципу перешкоджає виникнення тупиків. Для виявлення і розпізнавання тупиків в реплікованих системах застосовуються ті ж алгоритми, що і в моніторах транзакцій централізованих систем типу «клієнт-сервер».