Pertimbangan yang penting dalam mengimplementasikan control konkurensi adalah pemilihan locking level. Locking Level(disebut juga Lock Granularity) adalah tungkat dari sumber daya database yang dimuat bersama dengan lock lainnya.Implementasi dari lock yang paling sering diguanakan adalah sebagai berikut :
1. Database. Seluruh database akan terkunci dan menjadi tidak terbuka untuk user lain. Level ini memiliki aplikasi yang terbatas, seperti ketika melakukan backup pada seluruh database. (Rodgers,1989)
2. Tabel. Seluruh table yang mengandung permintaan record dikunci. Level ini sesuai untuk update dalam jumlah besar yang akan meng-update seluruh table, seperti memberikan kenaikan gaji sebesar 5% persen kepada semua pegawai.
3. Block atau Page. Penyimpana fisik dari block(atau page) yang mengandung permintaan record dikunci. Level ini adalah level yang paling sering diimplementasikan. Page/halaman akan berubah pada ukuran yang tetap(4K,8K,dll) dan mungkin akan mengandung record yang memiliki lebih dari satu tipe.
4. Record. Hanya record(baris) yang diminta yang dikunci. Semua record yang lain, walaupun dalam table yang sama masih dapat dibuka oleh user lain.Hal ini memaksasakan beberapa hal pada waktu run time ketika beberapa record terlibat dalam proses update.
5. Field. Hanya field(kolom) tertentu yang terkunci pada record yang diminta. Level ini mungkin sesuai ketika kebanyakan update mempengaruhi satu atau dua field dalam record. Sebagai contoh: dalam aplikasi control inventaris, satu bagian dari field mengalami perubahaan, tetapi pada field lain (seperti deskripsi dan lokasi bin) jarang untuk terupdate. Field-level lock dibutuhkan dalam jumlah besar dan jarang digunakan.
Tidak ada komentar:
Posting Komentar