Senin, 21 April 2014

ISOLASI TRANSAKSI

ISOLASI TRANSAKSI 


Dalam transaksi database, ada 3 hal yang harus dicegah :

1.  Dirty Read
         Transaksi membaca data dari hasil transaksi lainnya yang gagal. Kedua transaksi tersebut berjalan      bersamaan.

2.  Non-Repeatable Read
         Transaksi membaca ulang data yang telah di baca sebelumnya karena data tersebut telah di modifikasi oleh transaksi lainnya.

3.  Phantom Read
         Transaksi membaca sebuah data yang telah hilang akibat dari transaksi yang lainnya.


     Untuk mencegah 3 hal tersebut, dalam Oracle terdapat 2 level isolasi yang dapat diimplementasikan, yaitu :



1.  Read Commited
         Transaksi hanya dapat melihat perubahan data setelah transaksi lain telah commit pada data tersebut. (Seperti dalam contoh commit)

2.  Serializable
         Level ini mengemulasikan eksekusi transaksi secara serial, menjadikan transaksi dieksekusi satu setelah yang lainnya,seperti secara serial, bukan secara bersamaan (pararel). Untuk implementasi dalam ORACLE seperti berikut ini :
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;


Tidak ada komentar:

Posting Komentar