Optimista konkurenciavezérlés

Hasonló dokumentumok
Adatbázisok II Jánosi-Rancz Katalin Tünde 327A 1-1

Tranzakció, mint a helyreállítás egysége

2MU09f_Konkvez_feladatok.pdf Feladatok a tranzakciókezelésbıl

Adatbázis Rendszerek II. 10. Tranzakció kezelés 72/1B IT MAN

Ellenőrző kérdések. 5. Kis dolgozat kérdései. (9-10. előadás)

B I T M A N B I v: T M A N


Adatbázisok elmélete 24. előadás

Operációs rendszerek. Az NT memóriakezelése

Élet az IPv4 után. Hbone workshop

VRV Xpressz Használati Útmutató

Adatbázisok elmélete 24. előadás

Megoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat

VÁLTOZÁS JEGYZÉK VERZIÓ:

BarAck.Net. Internetes csomagkezel. Felhasználói kézikönyv V 1.0. (2011. július 20.)

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.

Az Ön kézikönyve HP SCANJET 7490C SCANNER

UNDO naplózás. Naplóbejegyzések. Visszaállítási esetek

Elosztott rendszerek

Online algoritmusok. Algoritmusok és bonyolultságuk. Horváth Bálint március 30. Horváth Bálint Online algoritmusok március 30.

HASZNÁLATI ESET DIAGRAM (USE CASE DIAGRAM)

MATEMATIKA KÖZÉPSZINT% ÍRÁSBELI VIZSGA II. É R E T T S É G I V I Z S G A május május 5. 8:00 EMBERI ERFORRÁSOK MINISZTÉRIUMA

100% BIO Natur/Bio kozmetikumok és testápolás

Tranzakciók, nézettáblák, indexek. Párhuzamos folyamatok irányítása Virtuális és materializált nézettáblák Az adathozzáférés felgyorsítása

A TANTÁRGY ADATLAPJA

A 2012/2013 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának megoldása. informatika II. (programozás) kategória

C# Szálkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Szálkezelés / 21

I január 1-től életbe lépett, a MunBér14 programot érintő jogszabály-változások, hatásuk a programra

Adatbázisrendszerek 9. előadás: Tranzakciók és konkurencia

Management & Controlling-Service Vezetési Tanácsadó Kft. Marketing mutatószámok. Prezentáció. Marketing hatékonyság. MCS Szakmai délután

MATEMATIKA ÍRÁSBELI VIZSGA KÖZÉPSZINT% II. ÉRETTSÉGI VIZSGA október október 25. 8:00 MINISZTÉRIUM. Idtartam: 135 perc.

Az Ön kézikönyve NAVIGON SUNGOO

Operációs rendszerek II. Holtpont

Konkurenciavezérlés. Soros és sorba rendezhető ütemezések. Ütemezések

BASH script programozás II. Vezérlési szerkezetek

A 2016/2017 tanévi Országos Középiskolai Tanulmányi Verseny második forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória

12. előadás. Tranzakció kezelés és konkurencia kontroll. Adatbázisrendszerek előadás december 12.

O k t a t á si Hivatal

Operációs rendszerek. Elvárások az NTFS-sel szemben

Hazárdjelenségek a kombinációs hálózatokban

Tranzakciókezelés PL/SQL-ben

A 2016/2017 tanévi Országos Középiskolai Tanulmányi Verseny második fordulójának feladatai. INFORMATIKA II. (programozás) kategória

JOGI STÁTUSZ KEZELÉS MŰKÖDÉSE

Útmutató a évi szabadidősportos pályázatok elektronikus beadásához

Felhasználói kézikönyv

Tanulmányút az Udmurt Állami Egyetemen (Oroszország, Izsevszk) és az Udmurt Köztársaságban ( [1])

weblakszov Felhasználói útmutató

T I T - M T T. Hevesy György Kémiaverseny. A megyei forduló feladatlapja. 7. osztály. A versenyz jeligéje:... Megye:...

Facebook album beillesztése az oldalba

ÍRÁSBELI VIZSGA május 5. 8:00 II. Idtartam: 135 perc. ÉRETTSÉGI VIZSGA május 5. dátum javító tanár. II. rész 70

Mercedes felhasználói leírás

ÖSSZEFOGLALÁS A szivattyús energiatározó létesítési lehetőségek kiegészítő vizsgálatáról

Alkalmazások architektúrája

DSP architektúrák dspic30f család memória kezelése

Miskolci Egyetem Általános Informatikai Tanszék

A tesztelés feladata. Verifikáció

KÖZÖSSÉGI FORGALMI JEGYZÉK

Készlet mennyiség és lokátor korrekció cikk kartonról

Excel. Nem összefügg tartomány kijelölése: miután a tartomány els részét kijelöltük, lenyomjuk és nyomva tartjuk a CTRL gombot.

Szektortudat-fejlesztés. Ismeretek és ismérvek a szektorról. A szektorhoz való tartozás elnyei és a sikeres szektorépítés lehetségei.

NAV Online számla első napok

Vonalkód olvasó rendszer. Specifikáció Vonalkód olvasó rendszer SoftMaster Kft. [1]

SYNLAB ONLINE LELETPORTÁL FELHASZNÁLÓI ÚTMUTATÓ A SYNLAB HUNGARY KFT. PARTNEREI SZÁMÁRA

Ütemezési problémák. Kis Tamás 1. ELTE Problémamegoldó Szeminárium, ősz 1 MTA SZTAKI. valamint ELTE, Operációkutatási Tanszék

Konzisztencia és többszörözés. 10. kurzus

VEZÉRLŐEGYSÉGEK. Tartalom

Temporális adatbázisok. Kunok Balázs szakdolgozata alapján

GPRS Remote. GPRS alapú android applikáció távvezérléshez. Kezelési útmutató

Digitális technika (VIMIAA02) Laboratórium 5

1 Kezd lépések. 1.1 Felhasználók azonosítása. 1.2 Menüpontok. 1.3 Bejelentkezés. icard

Digitális technika (VIMIAA02) Laboratórium 5

Láncolt lista. az itt adott nevet csak a struct deklaráción belül használjuk

Mire jók a system programok az IDM3-ban? 1. rész heat/cool

MATEMATIKA ÍRÁSBELI VIZSGA EMELT SZINT% ÉRETTSÉGI VIZSGA október október 15. 8:00 MINISZTÉRIUMA EMBERI ERFORRÁSOK

SPECIÁLIS CÉLÚ HÁLÓZATI

Használati útmutató. Ventus B116

Network front-end. Horváth Gábor. Kovács Róbert. ELTE Informatikai Igazgatóság

Bevezetés a programozásba I.

Programozás alapjai 9. előadás. Wagner György Általános Informatikai Tanszék

A Magyar Evezs Szövetség Edzés- és Versenyszabályai

Eseményalgebra. Esemény: minden amirl a kísérlet elvégzése során eldönthet egyértelmen hogy a kísérlet során bekövetkezett-e vagy sem.

Szellem a fazékból: Czifray

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Felhasználói kézikönyv

A BEFOGADÓ NEMZETI TÁMOGATÁS ÉS A HADSZÍNTÉR-ELŐKÉSZÍTÉS KAPCSOLATA A TERVEZÉSHEZ SZÜKSÉGES INFORMÁCIÓKKAL TÖRTÉNŐ GAZDÁLKODÁS TÜKRÉBEN

MPLAB IDE - SIM - - Rövid ismertető a használathoz - Kincses Levente 3E22 89/ November 14. Szabadka

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

Siket diákok egyéni különbségeinek vizsgálata az idegennyelv-tanulásban: Egy kérdőíves kutatás néhány eredménye

Emlékeztet. a Magyar Mérnöki Kamara Továbbképzési Bizottság alakuló ülésérl

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Adatbázisok elmélete 21. előadás

Felhasználói kézikönyv

ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek

(11) Lajstromszám: E (13) T2 EURÓPAI SZABADALOM SZÖVEGÉNEK FORDÍTÁSA

energia ellátása, OTRDF 20/100 típ. oszloptranszformátor-állomás építése. Ügyintéző: Veres Zsolt Hiv. szám: 151/10851/2015.

Robbanásvédelmi dokumentáció

FIR WEBMODUL ALKALMAZÁS DIÁKIGAZOLVÁNY IGÉNYLÉS

Számítógépes Hálózatok. 4. gyakorlat

Az Ön kézikönyve SAMSUNG CLP-770ND

számított mező, számított tétel

Átírás:

Optimista konkurenciavezérlés Léteznek zárolás nélküli módszerek is a tranzakciók sorba rendezhetségének a biztosítására. idpecsét érvényesítés. Optimista: feltételezik, hogy nem fordul el nem sorba rendezhet viselkedés. ha netán mégis elfordul, akkor az optimista megközelítések egyetlen megoldása, hogy azt a tranzakciót, amelynek a viselkedése nem sorba rendezhet abortálja (visszagörgeti) és utána újraindítja. A zárolási ütemezk késleltetik a tranzakciókat.

Konkurenciavezérlés idpecsét módszerrel ütemezés alapelve: minden tranzakcióhoz rendel egy születési dátumot, vagy idpecsétet, amely jelzi, hogy mikor is jött létre a tranzakció a többi tranzakcióhoz viszonyítva. az idpecsét egy sorszámnak is tekinthet, amely megadja, hogy hol helyezkedik el a tranzakció a többi tranzakcióhoz viszonyítva a létrehozási idpont tekintetében: korábban létrejött tranzakció idpecsétje kisebb, késbb létrejött tranzakció idpecsétje nagyobb. Az idpecsét generálását a rendszeróra segítségével oldják meg vagy az ütemez egy számlálót tart karban, mely 1-el növekszik, akárhányszor egy tranzakció indul. Jelöljük TS(T)-el a T tranzakcióhoz rendelt idpecsétet (timestamp).

A tranzakciókezel filozófiája az idpecsét módszer esetén: a különböz tranzakciókhoz tartozó egymással konfliktusban álló mveletek esetén a mveletek végrehatási sorrendje feleljen meg a tranzakciók idpecsét sorrendjének. azon mveleteknek kell elbb végrehajtódniuk, amelyek idpecsétje kisebb. ha a tranzakciókezel a végrehajtás során olyan kísérletet tapasztal, hogy egy tranzakció olyan adatbáziselemet akar olvasni vagy módosítani, melyet egy fiatalabb tranzakció már egyszer módosított, akkor ezen mveletet megakadályozza, méghozzá úgy, hogy ezen idsebb tranzakciót abortálja. a visszagörgetés után újraindítja a tranzakciót, amely most egy nagyobb idpecséttel újrapróbálkozhat a mveletek végrehajtásával.

A zárolás és idpecsét alapú módszerek közötti különbségek: a zárolásnál a lefoglalás felengedése után bármely tranzakció hozzáférhet az adatbáziselemhez, az idpecsét módszer esetén nincs lezárás, az adatbáziselem bármikor elérhet, viszont csak azon tranzakciók férhetnek hozzá, melyek fiatalabbak, mint az utolsó foglalást végz tranzakció. a zárolás hátránya, hogy sokat várakoztat, és holtpont léphet fel, az idpecsét hátránya, hogy túlságosan könnyen kerülhet abortálásra egy tranzakció. az idpecséten alapuló módszer akkor jobb, ha sok tranzakció csak olvasási. az idpecsét esetén nincs várakozás, de hibák léphetnek fel, mivel nem azt figyeli, hogy az adatbáziselem feldolgozás alatt áll-e vagy sem, hanem csak az utolsó hozzáférést végz tranzakció idpecsétjét figyeli.

Az idpecsét sorrenden alapuló ütemezés esetén a mködés alapelve: tudnunk kell, mely tranzakció használta az egyes adatbáziselemet utoljára, ezért nyilván kell tartani az utolsó hozzáféréseket. az ütemez ezen jelz és az új igénnyel fellép tranzakció idpecsétjének összehasonlítása alapján dönti el, hogy engedélyezi-e az adatbáziselemhez való hozzáférést, vagy abortálnia kell az igényl tranzakciót. külön nyilván kell tartani mind az olvasásra, mind az írásra, hogy mely idpecsét tranzakció volt az utolsó engedélyezett mvelet igénylje. Ezen jelzknek egyre növeked értékeket kell tartalmazniuk.

Minden X adatbáziselemhez két idpecsétet társítanak, és egy bitet. 1. RT(X), az X olvasási ideje (read time), mely a legnagyobb idbélyegz, ami ahhoz a tranzakcióhoz tartozik, mely utoljára olvasta az X adatbáziselemet. 2. WT(X), az X írási ideje (write time), mely a legnagyobb idbélyegz, ami ahhoz a tranzakcióhoz tartozik, mely utoljára írta az X adatbáziselemet. 3. C(X), az X véglegesítési bitje (commit bit), melynek értéke akkor 1, ha a legújabb tranzakció, amely az X-et írta, már véglegesítve van. Ennek a bitnek az a célja, hogy elkerüljük azt a helyzetet, amelyben egy T tranzakció egy másik U tranzakció által írt adatokat olvas be és utána az U-t abortáljuk. (piszkos adat olvasása).

Az idpecséten alapuló ütemezés esetén felmerül problémák: a) Túl kési olvasás: egy T tranzakció megpróbálja olvasni az X adatbáziselemet, de az X írási ideje nagyobb, mint a T idpecsétje, vagyis WT(X) > TS(T), azt jelenti, egy fiatalabb tranzakció már módosította az X-et. legyen U a tranzakció, mely módosította az X-et. mivel U-t T után indítottuk, T az U által írt értéket olvasná, viszont T- nek azt az értéket kellett volna olvasnia, mely U módosítása eltt volt, ez viszont már nem ismert, ezért T-t az ütemez visszagörgeti.

b) Túl kési írás: T tranzakció megpróbálja írni az X adatbáziselemet, az X olvasási ideje azt mutatja, hogy egy másik tranzakció, mely a T által beírt értéket kellett volna olvasnia, mivel fiatalabb a T-nél, már beolvasta az X értékét, még mieltt T-nek sikerült volna írni az X-et: TS(T) < RT(X). c) Piszkos adat olvasás: A T tranzakció olvassa az X adatbáziselemet, melyet utoljára az U tranzakció írt (TS(U) < TS(T)) és nem is lenne semmi baj, ha U-t nem pörgetné vissza valamilyen hiba miatt a rendszer. ajánlott a T olvasását akkorra halasztani, mikor U véglegesítve van a véglegesítési bit segítségével oldja meg az ütemez a feladatot.

Az idpecséten alapuló ütemezés szabályai: Legyen egy T tranzakció, mely olvasási vagy írási kéréssel fordul az ütemezhöz. Az ütemez választásai a következk lehetnek: Engedélyezi a kérést. Visszagörgeti T-t, ha az idpecsétje megsérti a szabályokat és egy új idbélyegzvel újraindítja. Késlelteti T-t és késbb dönti el, hogy abortálja-e vagy engedélyezi T- t.

Az abortálások számának csökkentésére számos elgondolás született, mindenik alapja a tranzakciók konkurenciájának a csökkentése. Egyik megoldás: az ütemez létrehoz egy várakozó listát, a végrehajtásra jelentkez mveletekkel a várakozó mveletek végrehajtása során a bejegyzett mveletek közül mindig a legkisebb sorszámú mveletet veszi sorra. biztosítható a mveletek soros végrehajtása, mert egy T tranzakció els mvelete csak akkor kerülhet végrehajtásra, ha a rendszerben már nem létezik nála kisebb idpecséttel rendelkez és még futó tranzakció. ha a tranzakció megkapta a vezérlést, nem engedi el, míg maga be nem fejezdik, a késbb keletkez tranzakciók mindig egyre növekv idpecsétet, azaz sorszámot kapnak. De így már ez a módszer esetén is megjelenik a várakozás.

Szabályok, melyet az idpecséten alapuló ütemez betart: 1. Legyen r T (X) az ütemezhöz érkez kérés. a) Ha TS(T) WT(X) az olvasás megvalósítható. Ha C(X) = 1 az ütemez engedélyezi a kérést. ha TS(T) > RT (X), akkor RT(X) : = TS(T) különben RT(X) nem változik. különben késlelteti T-t, amíg C(X) értéke 1 lesz vagy az X-et író tranzakció abortál. b) különben az olvasás fizikailag nem megvalósítható. az ütemez T-t visszagörgeti, majd újraindítja nagyobb idpecséttel.

2. Ha az ütemezhöz érkez kérés w T (X), a) Ha TS(T) RT(X) és TS(T) WT(X), az írás fizikailag megvalósítható. X új értékét beírjuk. WT(X) := TS(T). C(X) := 0. b) Ha TS(T) RT(X) és TS(T) < WT(X), az írás fizikailag megvalósítható, de X-nek már egy késbbi értéke van. Ha C(X) = 1, X elz írását végz tranzakció véglegesítve van, T írását egyszeren figyelmen kívül hagyjuk (egy fiatalabb tranzakció által írt érték a helyes), az ütemez engedi, hogy T folytatódjon. különben késlelteti T-t addig, amíg C(X) értéke 1 lesz vagy az X-et író tranzakció abortál.

c) Ha TS(T) < RT(X), az írás fizikailag nem megvalósítható az ütemez T-t visszagörgeti. 3. Legyen az ütemezhöz érkez kérés T véglegesítése. Az ütemez a karbantartási listája alapján megkeresi az összes olyan X adatbáziselemet, amelybe T írt és a C(X)-et 1-re állítja. Az ütemez egy másik listájában megkeresi azon tranzakciókat, melyek a T által írt X adatbáziselemek véglegesítésére vártak, ezeknek megengedi, hogy folytatódjanak. 4. Legyen az ütemezhöz érkez kérés a T visszagörgetése. (1-es és 2-es esetben is elfordult). Minden olyan tranzakcióra, amely T tranzakció írásaira várakozott, az ütemez meg kell ismételje azok írási vagy olvasási kísérleteit.

példa: T 1 T 2 T 3 X Y Z 15 20 25 RT = 0 WT = 0 RT = 0 WT = 0 RT = 0 WT = 0 r 1 (Z); w 1 (Z); r 2 (Y); w 2 (X); rollback r 3 (X); RT = 25 RT = 20 RT = 15 WT = 15 w 3 (Z); WT = 25

w 1 (Z) végrehajtható, TS(T 1 ) = RT(Z) és TS(T 1 ) WT(Z), (2.a.) w 2 (X): TS(T 2 ) < RT(X), az írás nem megvalósítható, (2.c) w 3 (Z) : TS(T 3 ) > RT(Z) és TS(T 3 ) > WT(Z), az írás megvalósítható. A kereskedelmi rendszerek egy kompromisszumot alkalmaznak a zárolás és idpecséten alapuló módszer között. lehetséget adnak a felhasználónak, hogy a tranzakciót csak olvasásinak (READ ONLY) vagy olvasási/írási tranzakciónak deklarálja. a csak olvasási tranzakciókat az idpecséten alapuló módszerrel hatják végre, az olvasási/írási tranzakciók esetén pedig a kétfázisú zárolást alkalmazzák és a csak olvasási tranzakciók ell is lezárják az olvasási/írási tranzakciók által használt adatbáziselemeket.

Módszerek a konkurenciavezérlésre: zárolás és idbélyegz, mindegyiknek vannak elnyei. tár felhasználása: mindegyik az összes aktív tranzakciók által hozzáfért adatbáziselemek számának az összegével arányos megközelítleg. az idbélyegzés kicsit több helyet használ, mivel nyomon kell kövessék a korábban véglegesített tranzakciók bizonyos hozzáféréseit.

késleltetés nélkül fejezdnek-e be a tranzakciók: egy módszer hatékonysága attól függ, hogy a tranzakciók közötti egymásra hatás ers vagy gyenge, vagyis milyen valószínséggel akar egy tranzakció hozzáférni olyan elemhez, amelyhez egy konkurens tranzakció már hozzáfért. a zárolás késlelteti a tranzakciókat, azonban elkerüli a visszagörgetéseket, még ha ers is az egymásra hatás. az idbélyez nem késlelteti a tranzakciókat, azonban visszagörgetést okozhat, amely a késleltetésnek egy problémásabb formája és még erforrásokat is pazarol. ha gyenge a tranzakciók közötti egymásra hatás, akkor az idbélyegzés, nem okoz sok visszagörgetést és elnyösebb lehet a zárolásnál.