Postest Masalah Konkurensi (Lanjutan)

Cara untuk menjaga konsistensi basis data untuk transaksi yang dilakukan secara bersamaan (konkunren) dengan mekanisme SERIALIZABILITY

a. Jelaskan 2 metode untuk menjamin SERIALIZABILITY
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

Jawab:
a.
1. LOCKING

Prosedur untuk mengontrol pengaksesan data secara konkuren.
Apabila satu transaksi mengakses basis data, suatu lock (kunci) akan menolak pengaksesan
transaksi lain utk mencegah modifikasi yg tidak benar


2. TIMESTAMPING
  Keduanya konservatif (pesimistik) karena transaksi ditunda untuk mencegah konflik dg
transaksi lain di waktu kemudian.

Skema yang menjamin serializability dengan memilih urutan pasangan transaksi
berdasarkan nilai waktu


Timestamp, merupakan suatu identifikasi unik dibuat DBMS yg mengindikasikan waktu 
mulai relatif dari suatu transaksi.

Dengan waktu sistem (system lock) atau penambahan pada kounter logik (logical counter) 
setiap waktu transaksi mulai.

Suatu protokol yg menyusun transaksi2 secara global, dimana transaksi yg tertua, 
transaksi dg timestamp terkecil, mendapat prioritas utama dari konflik transaksi tsb.



METODE OPTIMISTIC

  Berasumsi bhw konflik jarang terjadi sehingga proses tetap berjalan & pengecekan 
dilakukan pada saat transaksi sudah di-commit

Berbasis pada asumsi bahwa pada lingkungan tertentu, jarang terjadi konflik, sehingga 
lebih efisien membiarkan transaksi dieksekusi.


Kemudian pada saat akan di-commit, diidentifikasi apakah akan timbul konflik, jika ya 
maka transaksi harus di rollback atau di proses ulang.



b.
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.

Bila suatu transaksi hanya melakukan pembacaan saja, secara otomatis ia memerlukan kunci S.record, maka secara otomatis ia memerlukan kunci X. Bila transaksi tersebut sudah menggunakan kunci S, setelah itu ia akan memodifikasi record, maka kunci S akan dinaikkan ke level kunci X.
Kunci X dan kunci S akan dilepaskan pada saat Synchpoint (synchronization point). Bila synchpoint ditetapkan maka: semua modifikasi program menjalankan operasi COMMIT atau ROLLBACK semua kunci dari record dilepaskan.


Komentar

Postingan populer dari blog ini

Cara Setting JoyStick PES 2017 di PC

Mengatasi VRAM dan GPU Tidak Terbaca PES 2017

Cara Membuat Message Box (msgbox) dengan Notepad