C10 Flashcards

1
Q

Ce este o tranzacție într-un sistem distribuit?

A

O secvență de operațiuni garantată să fie atomică, menținând consistența obiectelor gestionate de server​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Ce înseamnă proprietatea ACID a unei tranzacții?

A

-Atomicitate: Toate operațiunile se execută complet sau deloc.

-Consistență: Sistemul trece dintr-o stare consistentă în alta.

-Izolare: Tranzacțiile par a se executa secvențial.

-Durabilitate: Datele sunt stocate permanent după o tranzacție reușită​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Care sunt principalele tipuri de tranzacții?

A

Tranzacții plate, tranzacții imbricate și tranzacții distribuite​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Ce este o tranzacție plată?

A

O serie secvențială de operațiuni care respectă proprietățile ACID și nu permite execuții paralele​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Ce este o tranzacție imbricată?

A

O tranzacție compusă din mai multe sub-tranzacții care pot fi executate în paralel pe mașini diferite​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Ce este o tranzacție distribuită?

A

O tranzacție care implică mai multe servere și trebuie să fie angajată sau anulată în totalitate​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Care sunt provocările tranzacțiilor distribuite comparativ cu cele locale?

A

Implementarea proprietăților ACID este mai complexă din cauza multiplelor locații și a problemelor de sincronizare​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Ce este un protocol de commit atomic?

A

Un protocol care asigură că toate părțile implicate într-o tranzacție distribuită fie angajează (commit), fie anulează (rollback) tranzacția​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Care sunt pașii protocolului de commit pentru tranzacții distribuite?

A

-Fiecare server participant își raportează disponibilitatea către coordonator.

-Coordonatorul decide angajarea sau anularea tranzacției.

-Serverele aplică decizia finală​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Ce rol are coordonatorul într-o tranzacție distribuită?

A

Coordonatorul inițiază, monitorizează și finalizează tranzacția, asigurând aplicarea consecventă pe toate serverele​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Care sunt principalele metode de gestionare a blocărilor (locking) într-o tranzacție?

A

Blocarea resurselor pentru a preveni accesul simultan și asigurarea consistenței datelor​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Care sunt fazele protocolului Two-Phase Commit (2PC)?

A

-Faza 1 (Voting): Coordonatorul cere participanților să voteze (Yes/No).

-Faza 2 (Completion): Dacă toate voturile sunt „Yes”, tranzacția este angajată; altfel, este anulată​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Ce mesaje sunt folosite în protocolul Two-Phase Commit?

A

canCommit?,
doCommit,
doAbort,
haveCommitted,
getDecision​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Care sunt principalele riscuri în protocolul Two-Phase Commit?

A

Blocarea participanților în starea de incertitudine în cazul eșecului coordonatorului​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Ce măsuri pot fi luate pentru a evita blocarea în 2PC?

A

Utilizarea de timeouts și protocoale de recuperare a deciziilor​.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Ce este spațiul de lucru privat (Private Workspace) în tranzacții distribuite?

A

Un spațiu temporar în care tranzacția lucrează, fără a afecta datele originale până la commit​.

17
Q

Care sunt avantajele utilizării unui spațiu de lucru privat?

A

Izolarea tranzacțiilor și posibilitatea de rollback ușor​.

18
Q

Cum se gestionează schimbările în Private Workspace?

A

Printr-un index privat care urmărește modificările și permite rollback sau commit​.

19
Q

Ce este tehnica Write-Ahead Log (WAL)?

A

Înainte de a modifica datele, toate schimbările sunt înregistrate într-un jurnal pentru recuperare în caz de eșec​.

20
Q

Cum ajută jurnalul Write-Ahead Log în cazul unei întreruperi?

A

Permite revenirea la starea anterioară folosind înregistrările de rollback​.

21
Q

Care sunt pașii unui rollback folosind Write-Ahead Log?

A

Parcurgerea jurnalului în ordine inversă pentru a anula toate modificările​.