konspekt - Tartu Ülikool
konspekt - Tartu Ülikool
konspekt - Tartu Ülikool
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
eegli 2 nõuded täidetud.<br />
Tuletame siinkohal meelde esimese reegli konfliktsituatsioonide vältimiseks:<br />
1. Ì ei või kirjutada, kui andmeid on lugenud Ì ja Ì Ì .<br />
Seda reeglit antud meetod rikub juhul kui meil on andmeid, mille lugemise<br />
ajatempel on suurem, kui Ì ajatempel ja kui selle vertsiooni kirjutamise ajatempel<br />
on väiksem, kui Ì ajatempel.<br />
Ì kontroll<br />
ÑÜÚÖ×Ñ lugemise ajatempel Ì ?<br />
teosta kirjutamine ajutisele versioonile Ì ajatempliga.<br />
<br />
katkesta Ì .<br />
Ì kontroll<br />
Joonis 12.10: Mitmeversiooniline ajatempliga järjestamise kirjutamise reegel<br />
Mitmeversiooniline ajatempliga järjestamise kirjutamise reegel Kuna iga<br />
potentsiaalselt konfliktne lugemise operatsioon suunatakse värskeimale andmebloki<br />
versioonile, kontrollib server versiooni ÑÜÚÖ×Ñ kirjutamise ajatemplit.<br />
Kontrolli algoritm konfliktide tuvastamiseks on toodud joonisel 12.10. Testitakse<br />
transaktsiooni Ì kirjutamist andmeblokile .<br />
Ì<br />
Ì <br />
Ì <br />
Ì <br />
Ì <br />
Ì<br />
Ì<br />
kinnitatud<br />
Ì<br />
Ì <br />
Ì Ì Ì Ì Ì <br />
ajutine<br />
aeg<br />
Ì : kirjutamise tempel<br />
Ì : lugemise tempel<br />
Joonis 12.11: Hiline kirjutamine<br />
135<br />
Illustreerimaks näidet, kus hiline kirjutamine katkestatakse, vaatame joonist<br />
12.11. Andmetest on juba olemas kinnitatud versioonid kirjutamise ajatemplitega<br />
Ì ja Ì . Serverile laekub nüüd järgnev operatsioonide järjend:<br />
Ì lugemine; Ì kirjutamine; Ì lugemine; Ì kirjutamine<br />
1. Ì loeb Ì kirjutamistempliga märgitud versiooni, sellele blokile lisandub<br />
lugemise templi väärtuseks Ì .<br />
2. Ì kirjutab, andmetest luuakse uus ajutine versioon, kirjutamise templi väärtuseks<br />
Ì .<br />
3. Ì loeb Ì kirjutamistempliga märgitud versiooni, sellele blokile lisandub<br />
lugemise templi väärtuseks Ì .<br />
4. Ì soovib kirjutada, selleks valitakse kirjutamise templi järgi viimane versioon<br />
andmetest, aga sinna ei saa kirjutada, kuna lugemise ajatempel Ì on<br />
suurem, kui Ì . Transaktsioon Ì tuleb katkestada.<br />
Kui transaktsioon katkestatakse, kustutatakse kõik selle transaktsiooni loodud<br />
andmeversioonid. Edukalt lõpetanud transaktsiooni andmed tuleb säilitada.<br />
136