21
transaksi T
6
membaca bal
x
dan
bal
z
sampai setelah transaksi
T
5
selesai
mengubah nilai
bal
x
dan bal
z
pada database.
2.4.2
Serializability dan Recoverability
Tujuan
protokol concurrency
control
adalah
untuk
menjadwalkan
transaksi sedemikian rupa sehingga dapat terhindar dari berbagai
gangguan,
dan
juga
mencegah
tipe-tipe
masalah
yang
digambarkan pada
sesi
sebelumnya. Satu solusi
yang jelas adalah
mengijinkan hanya satu transaksi
yang
berjalan
dalam
satu
waktu.
Satu
transaksi
berstatus commit
sebelum
transaksi berikutnya diijinkan
mulai. Namun,
tujuan dari
DBMS
multi
user
juga
untuk
memaksimalkan derajat
concurrency
atau
paralelisme
dalam
sebuah
sistem,
sehingga transaksi yang
dapat
berjalan
tanpa
mengganggu
satu
sama
lain
dapat
berjalan
secara
paralel.
Contohnya, transaksi
yang
mengakses bagian berbeda pada database dapat dijadwalkan bersama
tanpa
gangguan. Dalam bagian
ini, kita
memeriksa serializability
sebagai
sebuah
cara
untuk
membantu
mengidentifikasi eksekusi
transaksi
tersebut
yang
dijamin
untuk
memastikan konsistensi. Pertama,
akan
dijelaskan
beberapa
definisi.
2.4.2.1
Serializability
Schedule
adalah
sebuah
urutan
dari
operasi-operasi oleh
satu
set
transaksi
yang
jalan
bersamaan
yang
menjaga
urutan
operasi
pada
setiap
transaksi individual (Connolly, 2005, p580).
|