Pages

6/29/2010

PENGONTROLAN KONKURENSI

  • Pengontrolan konkurensi merupakan salah satu fungsi dari DBMS
  • Pada DBMS terpusat yang multi-user, dapat mengakses sejumlah transaksi pada waktu bersamaan.
  • Transaction (transaksi) adalah suatu aksi atau serangkaian aksi yang dilakukan oleh seorang pemakai atau suatu program aplikasi, dimana dapat mengakses atau mengubah isi dari database.
  • Dua hasil transaksi adalah commit atau rollback.
  • Jika transaksi berjalan sukses maka dikatakan commit, sebaliknya jika transaksi tidak berjalan sukses maka transaksi ibatalkan dan kembali ke keadaan semula dikatakan rollback.
  • Untuk menjamin transaksi-transaksi yang dilakukan bersamaan berjalan sukses tanpa adanya tumpang tindih maka dibutuhkan mekanisme pengontrolan konkurensi, jika tidak timbul permasalahan:

1. Lost update
Permasalahan timbul pada saat operasi update berjalan sukses kemudian ditindih oleh operasi update lain yang dilakukan oleh pemakai lain.

2. Uncommited dependency
Permasalahan timbul pada saat transaksi dibiarkan melihat hasil dari transasksi lain yang belum commit.

3. Inconsistent analysis
Permasalahan timbul apabila suatu transaksi membaca beberapa nilai tetapi transasksi berikutnya memodifikasi salah satu nilai.

TEHNIK PENGONTROLAN KONKURENSI

1. Locking
Apabila suatu transaksi mengakses suatu data maka suatu lock (kunci) dapat mencegah pengaksesan oleh transasksi lain.

2. Timestamping
Timestamping merupakan suatu identitas waktu dimulainya suatu transasksi.
Timestamping mengatur prioritas transaksi berdasarkan timestamp. Timestamp terkecil merupakan transaksi paling duluan, jika terjadi konflik transaksi direstart.

3. Optimistic
Konflik jarang terjadi, semua transaksi dieksekusi dan pada saat commit, dicek kembali, jika ada konflik transaksi direstart.

0 comments:

Posting Komentar