Rabu, 29 April 2020


Postest masalah Konkurensi


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

Serializability adalah suatu aturan untuk menjadwalkan proses-proses transaksi yang dijalankan hampir bersamaan dengan tetap menjaga konsistensi data seolah-olah proses dari transaksi-transaksi tersebut dijalankan secara serial.  Metode untuk menjamin Seriability adalah Locking dan Timestamping.



1.METODE LOCKING
Locking adalah sebuah prosedur yang digunakan untuk mengendalikan akses bersamaan ke data. Ketika sebuah transaksi sedang mengakses database, sebuah lock mungkin menolak akses ke transaksi lain untuk mencegah hasil yang salah ( Connolly, 2005, p587 ). Ada dua macam lock, yaitu shared lock dan exclusive lock yang harus digunakan sebelum melakukan akses membaca ataupun menulis terhadap database. Penggunaan lock ini adalah untuk menjaga konsistensi data didalam database.
>Jika sebuah transaksi mempunyai sebuah shared lock pada sebuah item data, transaksi tersebut dapat membaca item tapi tidak dapat mengubah datanya ( Connolly, 2005, p588 ). >Jika sebuah transaksi mempunyai sebuah exclusive lock pada sebuah item data, transaksi tersebut dapat membaca dan mengubah item data ( Connolly, 2005, p588 ).

- 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.
TAHAPAN PENGUNCIAN {matriks locking}
Phase 1: Fase bertumbuh (Growing Phase)
Transaksi dapat melakukan sejumlah penguncian, tetapi belum melepaskan satupun penguncian .
Phase 2: Fase pelepasan (Shrinking Phase)
Transaksi mungkin melepas kunci & Transaksi belum melakukan penguncian yang baru.

Titik dalam schedule dimana transaksi tersebut telah mendapatkan penguncian akhir disebut lockpoint transaksi.Locking dua fase tidak menjamin terjadinya deadlock.
Atran Locking

Transaksi yg akan mengakses suatu data harus terlebih dahulu menguncinya, meminta kunci S jika hanya melakukan read data saja atau kunci X jika untuk melakukan operasi read & write.Jika data tsb belum dikunci oleh transaksi apapun, maka kunci diperkenankan.
Jika data tsb telah dikunci, maka DBMS menentukan apakah kunci yg diminta sesuai dg yg ada. Jika kunci read yg diminta sama dengan kunci read yg telah ada, maka permintaan diperkenankan, selain itu maka transaksi harus menunggu (wait) sampai kunci write dilepaskan.Transaksi terus menahan suatu kunci sampai dilepaskan secara eksplisit selama eksekusi atau telah selesai.

Strict Two-Phase Locking. Dengan mekanisme ini dikehendaki bahwa semua penguncian dengan mode exclusive dari sebuah transakasi harus tetap dipegang hingga transaksi berada dalam status berhasil sempurna (commiteed).
Rigorous two-phase locking yang menghendaki semua penguncian (exclusive maupun share) tetap diterapkan hingga transksaksi committed.


2.METODE TIMSTAMPING
Timestamp, merupakan suatu identifikasi unik dibuat DBMS yg mengindikasikan waktu mulai relatif dari suatu transaksi.Dengan waktu sistem atau penambahan pada kounter logik 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.


Tidak ada komentar:

Posting Komentar