Tranzacții și Paralelism

Previzualizare curs:

Extras din curs:

Tranzacţii şi paralelism

V-om analiza posibilităţile executării tranzacţiilor în paralel de către mai mulţi utilizatori, - izolarea tranzacţiilor.

SGBD sunt sisteme multiutilizatori, adică permit în paralel lucrul a mai multor utilizatori. Trebuie de ţinut cont că utilizatorii nu trebuie să încurce unul altuia. Fiindcă o unitate logică pentru utilizator este tranzacţia, lucrul SGBD trebuie organizat în aşa fel, ca utilizatorul să nu observe că tranzacţiile lor se îndeplinesc odată cu altele..

Cea mai simplă metodă este de a crea o coadă din tranzacţiile utilizatorilor şi de a le executa în ordinea apărută. Această metodă nu este convenabilă, fiindcă se pierde principiul lucrului în paralel. Rezultă că tranzacţiile trebuiesc executate odată, dar aşa, ca rezultatele să fie aşa – cum ar fi îndeplinite în rând. Complicat poate fi faptul, că dacă nu se iau careva măsuri atunci datele, modificate de un utilizator pot fi modificate de tranzacţia altui utilizator mai devreme ca să fie finisată tranzacţia primului utilizator. Una din metod este de a folosi blocările.

Tranzacţii în combinaţii

Atomicitatea tranzacţie presupune că trebuie să fie executată complet sau să nu fie executată deloc. SGBD garantează utilizatorului îndeplinirea următoarelor două condiţii:

1. trebuie să fie executată complet sau să nu fie executată deloc;

2. În timpul executării aceste i operaţii nu se execută alte operaţii al altor tranzacţii.

Operaţiile elementare a diferitor tranzacţii pot fi executate în orice ordine (evident, în interiorul fiecărei tranzacţii operaţiile elementare sunt executate în ordinea indicată).

De exemplu, dacă sunt nişte tranzacţii, ce constau dintr-o serie de instrucţiuni elementare:

seria, creată de SGBD pentru a executa aceste tranzacţii poate fi de exemplu:

Definiţie 1. O serie din mai multe tranzacţii, instrucţiunile elementare a cărora se intercalează, se numeşte combinaţie de tranzacţii.

Definiţie 2. Seria, în care se execută instrucţiunile elementare a tranzacţiilor, se numeşte graficul de execuţie a tranzacţiilor.

Notă. Evident, că pentru careva tranzacţii pot exista mai multe grafice de execuţie diferite.

Determinarea izolării utilizatorilor, se reduce la alegerea graficului de execuţie a tranzacţiilor. Tot odată graficul de execuţie trebuie să fie optimal, de exemplu, să dea timp minim pentru executarea tranzacţiilor fiecărui utilizator. V-om analiza termenul grafic de execuţie ”corect”

şi unele remarci despre optimalitate.

Problemele executării paralele a tranzacţiilor.

Cum pot tranzacţiile unor utilizatori să încurce la alţi utilizatori? Se discută despre trei probleme de bază a paralelismului:

• Problema pierderii rezultatelor modificării.

• Problema dependenţei nefixate (citirea datelor „murdare”, citirea incorectă).

• Problema analizei incompatibile.

Să analizăm aceste situaţii.

Fie două tranzacţii, A şi B, sunt executate conform căruiva grafic. Fie că tranzacţiile lucrează cu careva obiecte a BD, de exemplu cu rândurile tăbliţei. Instrucţiunea de citire a rândurilor v-om nota-o , unde - valoarea citită. Instrucţiunea de scriere a valorii în rândul v-om nota-o .

Problema pierderii rezultatelor modificării

Două tranzacţii pe rând înscriu careva date în acelaşi rând şi fixează modificări.

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Tranzactii si Paralelism.doc
Alte informații:
Tipuri fișiere:
doc
Nota:
7/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
8 pagini
Imagini extrase:
8 imagini
Nr cuvinte:
2 457 cuvinte
Nr caractere:
12 652 caractere
Marime:
27.68KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Curs
Domeniu:
Calculatoare
Predat:
la facultate
Materie:
Calculatoare
Profesorului:
Grigore Vasilache
Sus!