Politechnika Krakowska im Tadeusza Kościuszki
Wydział Fizyki, Matematyki i Informatyki
Kierunek: Informatyka
studia I stopnia, semestr IV
Podstawy baz danych
Kurs e-learningowy
przeznaczony dla studentów I stopnia
kierunku INFORMATYKA
WYKAAD 13
Mechanizmy zapewnienia spójności
przetwarzanie transakcyjne
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Spójność transakcji
Spójność transakcji
Wykład 13:
Wykład 13:
Spójność bazy danych
Spójność bazy danych
" stan bazy danych jest zgodny ze stanem reprezentowanego przez nią
fragmentu rzeczywistości,
" wszystkie ograniczenia integralnościowe w bazie danych są spełnione.
Poziomy spójności w bazie danych:
Poziomy spójności w bazie danych:
" spójność polecenia zbiór danych odczytanych przez pojedyncze
polecenie pochodzi z tego samego momentu w czasie (momentu
rozpoczęcia wykonania polecenia),
" spójność transakcji zbiór danych, odczytywanych przez wszystkie
zapytania w pojedynczej transakcji, pochodzi z tego samego
momentu w czasie (momentu rozpoczęcia transakcji).
Zagrożenia spójności:
Zagrożenia spójności
" awarie, działania użytkowników,
" współbieżny dostęp do danych.
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Współbieżność transakcji
Współbieżność transakcji
Wykład 13:
Wykład 13:
" Sytuacja, w której kilka transakcji wykonuje
równolegle operacje na tych samych danych
Anomalie współbieżnego dostępu:
Anomalie współbieżnego dostępu:
brudny odczyt (ang. dirty read)
utracona modyfikacja (ang. lost update),
niepowtarzalny odczyt (ang. non-repeatable
read),
fantomy (ang. phantoms).
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Poziomy izolacji transakcji transakcji
Poziomy izolacji transakcji transakcji
Wykład 13:
Wykład 13:
" odczyt niezatwierdzonych danych (ang.
read uncommitted)
" odczyt zatwierdzonych danych (ang. read
committed)
" powtarzalny odczyt (ang. repeatable read),
" uszeregowalny (ang. serializable).
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Poziomy izolacji transakcji transakcji
Poziomy izolacji transakcji transakcji
Wykład 13:
Wykład 13:
Poziom izolacji/ Dirty Non-repeatable Phantoms
Poziom izolacji/
read
Anomalia read
Anomalia
Read możliwa możliwa możliwa
Read
uncommitted
uncommitted
Read committed brak możliwa możliwa
Read committed brak możliwa
Repeatable read brak brak możliwa
Repeatable read brak brak
Serializable brak brak brak
Serializable brak brak brak
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Zarządzanie współbieżnością
Zarządzanie współbieżnością
Wykład 13:
Wykład 13:
Algorytmy:
" optymistyczne wykorzystanie znaczników czasowych,
" pesymistyczne wykorzystanie blokad, najczęściej
stosowany algorytm: blokowanie dwufazowe (2PL)
Blokada przydzielenie zasobu do zadania
Rodzaje blokad:
" wyłączne zasób może być przydzielony tylko do jednego
zadania,
" współdzielone zasób może zostać przydzielony
jednocześnie wielu zadaniom.
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Zarządzanie współbieżnością
Zarządzanie współbieżnością
Wykład 13:
Wykład 13:
Zadanie, któremu przydzielany jest zasób to transakcja
Blokowany zasób:
wysoki poziom
mniejsze ziarno
atrybut
współbieżności
blokowania
rekord
strona dyskowa
relacja
niski poziom
większe ziarno
baza danych
współbieżności
blokowania
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Zarządzanie współbieżnością
Zarządzanie współbieżnością
Wykład 13:
Wykład 13:
" Ziarno blokowania: rekord i relacja
" Rodzaje blokad:
rekord blokada wyłączna,
relacja blokada wyłączna lub współdzielona.
" Blokowanie jest realizowane automatycznie bez udziału
użytkownika.
" Operacje odczytu danych nie wymagają założenia blokad
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Kopia zapasowa - odtwarzanie
Kopia zapasowa - odtwarzanie
Wykład 13:
Wykład 13:
" W przypadku awarii administrator musi odtworzyć dane z wcześniej
wykonanej kopii zapasowej
" Administrator opracowuje strategię sporządzania kopii zapasowej całej
bazy danych, albo jej części
" Kopię zapasową jak również kopię dziennika transakcji wykonuje się
okresowo używając specjalnych narzędzi SZBD
" Awarie globalne można podzielić na dwie kategorie:
Awarie systemowe (zasilanie) dotykają aktualnie wykonywanych
transakcji, ale nie uszkadzają fizycznej bazy danych (miękkie
awarie)
Awarie nośników (uszkodzenie dysku) uszkodzenie bazy danych
lub jej części (awarie twarde)
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Kopia zapasowa - odtwarzanie
Kopia zapasowa - odtwarzanie
Wykład 13:
Wykład 13:
" Uruchom transakcję i przekaż do SPT
" Zapisz transakcję do dziennika zapisz w dzienniku
informacje początkowe o transakcji
" Sprowadz rekordy z bazy danych
" Zapisz do dziennika obraz przed transakcją
" Oblicz nowe wartości
" Zapisz do dziennika obraz po transakcji
" Zapisz w dzienniku zatwierdzenie
" Zapisz nowe rekordy do bazy danych
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Kopia zapasowa - odtwarzanie
Kopia zapasowa - odtwarzanie
Wykład 13:
Wykład 13:
Czas
T
T1
R
A
T2
N
S
T3
A
K
T4
C
J
T5
A
Punkt kontrolny
Awaria systemu
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Kopia zapasowa - odtwarzanie
Kopia zapasowa - odtwarzanie
Wykład 13:
Wykład 13:
" Tworzy dwie listy transakcji
UNDO (transakcje uzyskane z aktualnego rekordu
kontrolnego)
REDO (pusta lista)
" Przeszukuje (do przodu) dziennik transakcji zaczynając od rekordu
kontrolnego. Jeśli napotka na pozycję BEGIN TRANSACTION dla
danej transakcji dodaje tą transakcję do listy UNDO
" Jeśli znajdzie COMMIT dla transakcji, przesuwa transakcję z listy
UNDO do REDO
" System ponownie przechodzi przez dziennik, ale tym razem
wstecz, cofając skutki transakcji z listy UNDO
" Posuwa się do przodu i ponownie wykonuje transakcje z listy
REDO
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Kopia zapasowa - odtwarzanie
Kopia zapasowa - odtwarzanie
Wykład 13:
Wykład 13:
" Kiedy napotka na znak końca dziennika, wtedy lista UNDO
wskazuje transakcje T3 i T5 a REDO T2 i T4
" Następnie system ponownie przechodzi przez dziennik, ale
tym razem wstecz, cofając skutki transakcji z listy UNDO
" Potem posuwa się znów do przodu i ponownie wykonuje
transakcje z listy REDO
" Kiedy wszystkie te czynności zostaną zakończone system jest
gotowy do pracy.
autor: dr inż. Stanisława Plichta
autor: dr inż. Stanisława Plichta
Wyszukiwarka
Podobne podstrony:
Wykład 8 Przetwarzanie transakcyjnewykład 3 1 Przetwarzanie transakcyjneWykład 5 Mechanizmy kryptograficzne i ich wykorzsytanieWyklad Mechanika Kwantowa Wstepwyklad 3 na3h komputerowa analiza i przetwarzanie obrazowErrata skrypt Wyklady z mechaniki ogolnejwyklad26 mechanikaWykład 9 Algorytmy zarządzania współbieżnym wykonywaniem transakcji część IErrata Wyklady mechanika htmlSzkic do wykladow z mechaniki statykaMechanika płynów dzienne energetyka0h Wyklad 6więcej podobnych podstron