Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Застосування блокування і проблеми, пов'язані з нимСодержание книги
Поиск на нашем сайте
Транзакції вимагають застосування спеціальних модулів (планувальників) і протоколу обробки транзакциій. Щоб уникнути проблем з розподіленою обробкою використовуються блокування. Існує два типи блокувань: Блокування X-типу – повністю блокує доступ до транзакції Блокування S-типу - це блокування вирішує режим "тільки читання", але транзакцію не можна модифікувати. У реляційній базі даних найчастіше використовується протокол двофазного блокування 2PL. Правила приведені нижче: 1. Якщо операції pi(x) можуть виконуватися, блокування застосовується на транзакцію Ti і операція виконується. Якщо операція не може виконуватися, вона поміщається в чергу. 2. Видалення блокування виконується після завершення транзакції. 3. Якщо блокування було видалене з транзакції, транзакцію вже не можна заблокувати. Згідно правилам є дві фази виконання транзакцій. У першій фазі ставляться блокування, а в другій вони віддаляються. Перша фаза довша другої. Мал. 10.5.4. Протокол 2PL. Застосування блокування може призвести до взаємного блокування і зависання. Використання блокування вимушує транзакцію дочекатися звільнення ресурсу. Давайте розглянемо три транзакції: Транзакція А блокує ресурс X і вимагає доступу до ресурсу Y. Транзакція B блокує доступ до ресурсу Y і запрошує доступ до ресурсу X. Виходить взаємоблокування, і жодна з транзакцій не може завершитися. Приклади блокувань показані на малюнку: Мал. 10.5.5. Взаємоблокування транзакцій. Мал. 10.5.6. Взаємоблокування транзакцій.
Взаємоблокування є серйозною проблемою і може вплинути на результат роботи. Методи боротьби з взаємоблокуваннями: Метод 1. Виявлення взаємних блокувань і переривання циклу. Після виявлення взаємних блокувань слідує створення графа очікування і його транзитивне завершення (складність більша, ніж n*n). Переривання циклу відбувається шляхом видалення однієї з конфліктуючих транзакцій і її повторним запуском. Вибір грунтується на різних критеріях: остання, з найменшим робочим навантаженням, з низьким пріоритетом. Метод 2. Уникнення взаємних блокувань. Є багато таких методів, наприклад: Попередній запит ресурсу: перед початком кожна транзакція визначає свої потреби. Зміни не вносяться. Недолік - падіння ефективності паралельного обчислення. Чекай-помри (wait-die): якщо транзакція намагається дістати доступ до заблокованого ресурсу, вона відміняється. Це не застосовується до діалогових систем, оскільки користувач може бути збентежений потребою багатократного введення даних. Це зменшує продуктивність.
|
||||
Последнее изменение этой страницы: 2017-02-07; просмотров: 155; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.1.23 (0.007 с.) |