. . .

Senin, 08 Juni 2020

VC 7 Posttest : Masalah Konkurensi

Cara untuk menjaga konsistensi basis data untuk transaksi yang dilakukan secara bersamaan (konkunren) dengan mekanisme SERIALIZABILITY
a. Jelaskan 2 metode untuk menjamin SERIALIZABILITY

Lock Based Protocol

Merupakan suatu cara/metoda yang digunakan untuk tetap menjaga serializability pada data yang diakses oleh lebih dari satu  transaksi.
Yaitu, apabila salah satu transaksi mengakses sebuah item data maka tidak akan ada transaksi yang dapat memodifikasi data tersebut.
Metoda yang umum digunakan adalah mengijinkan transaksi terhadap suatu data X apabila transaksi tersebut memegang “kunci” atau “Lock” untuk dapat memodifikasi data X.
Ada dua jenis mode penguncian dasar yang digunakan dalam mekanisme ini yaitu:
–      Bersama (Shared). Jika sebuah transaksi T dapat melakukan penguncian dengan mode ini (dilambangkan dengan S) terhadap item data Q, maka T dapat membaca, tapi tidak dapat mengubah nilai Q tersebut.
–      Tunggal (Exclusive). Jika sebuah transaksi T dapat melakukan penguncian dengan mode ini (dilambangkan dengan X) terhadap item data Q, maka T dapat membaca maupun mengubah nilai tersebut.

S
X
S
Compatible
Incompatible
X
Incompatible
Incompatible


Two-Phase Lock Protocol

Protocol ini menginginkan bahwa setiap transaksi yang akan menjalankan penguncian dan melepaskan penguncian harus melalui dua fase atau tahapan, yaitu:
•       Fase Pertumbuhan (Growing Phase). Sebuah transaksi dapat melakukan sejumlah penguncian tetapi belum satupun melepaskan pengunciannya.
•       Fase Pelepasan (Shrinking Phase). Sebuah transaksi dapat melepaskan sejumlah penguncian , tetapi belum melakukan penguncian yang baru.

            Pada awalnya, sebuah transaksi akan berada dalam fase pertumbuhan. Transaksi tersebut akan melakukan penguncian sebanyak yang dibutuhkan. Ketika transaksi mulai melepaskan sebuah penguncian, ia akan mulai memasuki fase pelepasan, tanpa ada permintaan penguncian berikutnya

b. Pada Metode Locking  untuk transaksi terus menahan suatu kunci sampai dilepaskan secara eksplisit selama eksekusi atau telah selesai, aturannya menggunakan matriks locking. Jelas kerja dari matriks Locking

Matrik Locking Cara kerja dari kunci :
Kita asumsikan terdapat 2 (dua) macam kunci :Kunci X (kunci eksklusif) dan kunci S (kunci yang digunakan bersama-sama)Jika transaksi A menggunakan kunci X pada record R, maka permintaan dari transaksi B harus menunggu sampai nanti transaksi A melepaskan kunciJika transaksi A menggunakan kunci S pada record R, Maka :Bila transaksi B ingin menggunakan kunci X, maka B harus menunggu sampai A melepaskan kunci tersebut.Bila transaksi B ingin menggunakan kuni S, maka B bisa menggunakan kunci S bersama A

0 komentar:

Posting Komentar