- uzamkne každý objekt, k němuž přistupuje
- nezamkne žádný objekt, který už je zamknut
- po svém provedení zruší zámek
Transakce je dvoufázová, pokud uzamkne všechny své potřebné objekty dříve než zruší jakýkoliv ze svých zámků.
Transakce prochází 2 fázemi:
V první se provede vícefázové uzamčení, ve druhé se provede zrušení uzamčení.
Existují výlučné zámky (uzamkne objekt a je jeho výlučným uživatelem) a sdílené zámky (jiným objektům je omezený přístup, například pouze čtení)
Časové značky
Je to číslo spojené s objektem nebo s událostí (tj. kdy značka vznikla)
· každá transakce musí být označena časovou značkou, datový objekt je označen časovou značkou poslední transakce, která větu četla nebo zapsala
· dochází k aktualizaci značek při čtení nebo zápisu
· nastane konflikt, pokud stará transakce čte nejnovější značky
· serializovatelnost se zabezpečí zvolením návazností časových značek
· COMMIT znamená úspěšné ukončení transakce a trvalý zápis
· ABORT znamená neúspěšné ukončení transakce a návrat k předchozímu stavu
Do teď vše probíhalo v jednom uzlu.
Žádné komentáře:
Okomentovat