Selasa, 12 Mei 2020

Posttest_VC7

1.  Serializability adalah suatu aturan untuk menjadwalkan proses – proses transaksi yang dijalankan hampir bersamaan tetapi tetap menjaga konsisten data seolah – olah proses dan transaksi – transaksi tersebut dijalankan secara serial.
Ada 2 cara agar menjaga serializability:

1.     -  Lock Based Protokol
Adalah suatu cara yang digunakan untuk menjaga serializability pada data yang diakses lebih dari satu transaksi. Yaitu apabila satu transaksi mengakses sebuah item data maka tidak aka nada transaksi yang dapat memodifikasi data tersebut.
Ada dua jenis mode penguncian dasar yang digunakan dalam mekanisme ini yaitu:
Bersama (Shared). Jika sebuah transaksi Ti  dapat melakukan penguncian dengan mode ini (dilambangkan dengan S) terhadap item data Q, maka Ti  dapat membaca, tapi tidak dapat mengubah nilai Q tersebut.
Tunggal (Exclusive). Jika sebuah transaksi Ti  dapat melakukan penguncian dengan mode ini (dilambangkan dengan X) terhadap item data Q, maka Ti  dapat membaca maupun mengubah nilai tersebut.
Hal yang harus diperhatikan :
Setiap transaksi harus meminta lock apabila akan melakukan operasi/mengakses  terhadap suatu data. Misalkan data  Q, mode-lock yang diterapkan terhadap data Q harus sesuai dengan operasi yang akan dilakukan.
Transaksi meminta lock terhadap suatu data, kepada concurrency control manager.
Operasi terhadap Q dapat dilakukan transaksi T apabila concurrency control manager memberikan grant (hak istimewa) lock yang diminta.

2.       - Two Phase Lock Protokol
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.


2. Cara kerja matriks locking :
Kita asumsikan terdapat 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 melepas kunci.
-          Jika transaksi menggunakan kunci A pada record S pada record R, maka:
o   Bila transaksi B ingin menggunakan kunci X, maka B harus menunggu sampai A melepas kunci tersebut.
o   Bila transaksi B ingin menggunakan kunci S, maka B bisa menggunakan kunci S Bersama A.


Sumber


Tidak ada komentar:

Posting Komentar