Postest_VC6_3KA88_12118087_Duriyawati
VC6 Posttest : Pengontrolan Konkurensi
a. Jelaskan outcome
dari transaksi dan berikan contoh nya
Outcome
dari Transaksi
Ada
2 outcome dari transaksi yaitu :
1. 1. COMMIT
Jika operasi berjalan sukses, maka transaksi disebut commited, basis
data mencapai kondisi konsisten yang baru
Contoh :
2. 2. ABORT
Jika operasi berjalan tidak
sukses, maka transaksi disebut aborted (gagal).
Jika transaksi gagal maka basis
data kembali ke keadaan konsisten sebelum transaksi dimulai. Disebut rollback atau undone
Contoh :
b. Properti Transaksi
yaitu ACID, jelaskan dan berikan contoh
Properti
Transaksi yaitu ACID
Singkatan
dari Atomicity, Consistency, Isolation, and Durability. Empat karakteristik
yang menjamin transaksi database diproses secara reliable.
Model ACID merupakan salah satu konsep tertua dan paling penting dari
teori database transaksional.
Manajemen
Transaksi dan properti transaksi ACID
- Sebuah
transaksi adalah unit eksekusi program yang mengakses dan mungkin mungkin
mengubah beberapa item data.
- Suatu
transaksi harus melihat database yang konsisten.
- Selama
eksekusi transaksi, database mungkin tidak konsisten.
- Ketika
sebuah transaksi dianggap commit maka database harus
konsisten.
- Dua
hal yang berkaitan dengan manajemen transaksi:
–
Kegagalan fungsi (Failures), terdiri dari kegagalan perangkat keras (hardware)
dan system crash.
– Eksekusi beberapa transaksi secara bersama.
Untuk
menjaga integritas data, database sistem harus menjamin:
- Atomicity. Jika semua operasi pada
sebuah transaksi sukses maka transaksi dianggap sukses, jika
salahsatu operasi pada suatu transaksi gagal maka transaksi dianggap
gagal.
- Consistency. Eksekusi sebuah
transaksi secara terisolasi bertujuan untuk menjaga konsistensi database.
- Isolation. Meskipun ada beberapa
transaksi yang berlangsung bersamaan, masing-masing transaksi tidak boleh
mengetahui transaksi lain yang sedang berlangsung. Hasil transaksi
sementara harus disembunyikan dari transaksi lain yang sedang berlangsung.
Sehingga, untuk pasangan transaksi Ti dan Tj, yang
terlihat oleh Ti adalah Tj selesai
melakukan eksekusi sebelum Ti mulai,
atau Tj memulai eksekusi setelah Ti selesai.
- Durability. Setelah sebuah transaksi
sukses dilakukan, perubahan-perubahan yang dibuatnya terhadap database
bersifat permanen, bahkan jika terjadi kegagalan sistem.
Contoh
:
Sebuah
transaksi transfer uang
Transaksi
untuk transfer $50 dari account A ke account B:
- read(A)
- A:= A – 50
- write(A)
- read(B)
- B:= B + 50
- write(B)
- Consistency
requirement –
jumlah A dan B tidak berubah setelah eksekusi transaksi.
- Atomicity
requirement —
Jika transaksi gagal dijalankan setelah langkah ke 3 dan sebelum langkah
ke 6, maka sistem harus menjamin bahwa perubahan yang terjadi tidak
direfleksikan di database, jika hal ini tidak dapat dilakukan maka akan
menghasilkan inconsistency.
- State
(keadaan) Transaksi.


Komentar
Posting Komentar