Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Sistem Basis Data ABU SALAM, M.KOM
2
Manajemen transaksi Konsep Transaksi
Transaksi adalah sebuah unit dari eksekusi program yang mampu mengakses dan mengupdate berbagai data yang memiliki kaitan logika transaksi itu sendiri dimana dalam menjaga konsitensi data secara terintegrasi dipertahankan. Sebuah transaksi harus menghasilkan konsistensi database jika sebuah transaksi tersebut sudah dijalankan, atau dengan kata lain setelah transaksi selesai maka database harus kembali konsisten.
3
–ACID : ATOMIK, CONSISTEN, ISOLASI, DURABILITY
Konsistensi suatu database berkaitan erat dengan integritas data, sehingga untuk menjamin integritas tersebut suatu database dalam menjalakan sebuah transaksi harus memiliki sifat: –ACID : ATOMIK, CONSISTEN, ISOLASI, DURABILITY
4
ATOMIK : Dimana semua operasi dalam transaksi harus bekerja secara utuh/total atau tidak bekerja sama sekali (artinya pekerjaan transaksi tidak boleh dikerjakan sebagian). CONSISTEN : Dampak eksekusi dari sebuah trnasaksi harus menjamin keadaan data yg konsisten. ISOLASI : Pada sejumlah Transaksi yang terjadi secara bersamaan , setiap transaksi tidak boleh terpengaruh transaksi lainnya yang juga sedang berjalan walaupun berhubungan atau menujun pada database yang sama. Hasil transaksi sementara harur terjaga dan terlindungi dari eksekusi-eksekusi yang lain. DURABILITY : Setelah terjadinya transaksi maka akan diikuti update atau perubahan data pada database, maka perubahan tersebut harus tetap bertahan dan dianggap paling valid dan konsisten.
5
Serializability Cara yang alamiah untuk memelihara konsistensi dalam sistem yang mengakomodasi pelaksanaan transaksi secara bersamaan (concurency system) adalah mengupayakan agar hasil pemrosesan sekumpulan transaksi yang sedang bersaing (dieksekusi bersama- sama) dalam satu kesatuan proses sama saja dengan yang dihasilkan dengan menjalankan transaksi-transaksi tersebut secara berurutan/serial dengan urutan tertentu.
6
Serializability (cont…)
Kemampuan untuk mengupayakan terjadinya kesamaan antara schedule yang konkuren dengan schedule yang serial disebut Serializability. Yang harus diperhatikan adalah operasi read dan write. Operasi read dan write hanya akan terjadi pada ruang memori utama (buffer) dan tidak mengakibatkan adanya perubahan terhadap isi basis data di dalam disk.
7
Contoh Schedule 3 yang disederhanakan. T1 T2 read (A) write (A)
read (B) write (B)
8
Serializability (cont….)
Ada dua cara yang dapat dipilih untuk mengetahui ekivalensi antara sebuah schedule konkuren dengan schedule serial,yaitu : 1. Conflict Serializability 2. View Serializability
9
Conflict Serializalibility
Pada kasus dimana terjadi overlapping (ada transaksi yang dijalankan ketika transaksi lain sedang berjalan) dalam pengeksekusian transaksi-transaksi yang ada, maka penjadwalan tersebut disebut penjadwalan non-serial. Penjadwalan demikian tidak selalu menghasilkan hasil eksekusi yang salah (bisa benar bila hasilnya sama dengan hasil penjadwalan serial). Penjadwalan non-serial yang menghasilkan eksekusi yang benar disebut conflict serializable
10
Conflict Serializalibility
Konflik terjadi bila: Ada dua operasi Oi dan Oj pada penjadwalan S dimana keduanya mengakses data yang sama, dan Setidaknya ada satu operasi yang melakukan write()
11
Contoh Penjadwalan Non-Serial (CONFLICT Serializable Schedule)
T0 T1 Read (A) Write (A) Read (A) Read (B) Write (A) Write (B) Read (B) Write (B)
12
Conflict Serializalibility
Pada contoh tersebut, write(A) pada T0 mengalami konflik dengan read(A) pada T1 karena keduanya mengakses data yang sama (A) dan terdapat operasi write(A). Namun, write(A) pada T1 tidak mengalami konflik dengan read(B) pada T0, karena walaupun ada operasi write(A) tetapi keduanya mengakses data yang berbeda.
13
Conflict Serializalibility
Dalam kasus dimana terjadi konflik antar dua operasi, maka dapat dilakukan swapping sehingga terbentuk penjadwalan baru S' yang urutannya sama dengan penjadwalan serial Pada contoh tersebut swapping yang dapat dilakukan adalah:
14
Conflict Serializalibility
Swap write(A) pada T1 dengan read(B) pada T0 Swap read(B) pada T0 dengan read(A) pada T1 Swap write(B) pada T0 dengan write(A) pada T1 Swap write(B) pada T0 dengan read(A) pada T1
15
Conflict Serializalibility
Maka, akan didapat penjadwalan baru S' yang merupakan penjadwalan serial. Penjadwalan demikian dinamakan conflict serializable, sedangkan proses penyusunan penjadwalan baru yang serial disebut serialisasi.
16
View Serializabilty Bentuk ekivalensi dalam pendekatan ini lebih longgar dibandingkan pendekatan sebelumnya (conflict serializability), walaupun analisanya masih tetap didasarkan pada dua operasi utama (read dan write). Menurut pendekatan ini, jika S merupakan schedule serial, maka S’ untuk himpunan transaksi yang dapat dikatakan view equivelant dengan S jika ketiga ketentuan dibawah ini terpenuhi :
17
View Serializabilty Untuk setiap item data Q, jika transaksi Ti membaca nilai awal dari Q pada schedule S, maka transaksi Ti pada schedule S’ juga harus membaca nilai awal dari Q. Untuk setiap item data Q, jika transaksi Ti menjalankan operasi read(Q) di schedule S untuk nilai Q yang telah ditulis oleh transaksi Tj, maka hal itu juga terjadi di schedule S’ Untuk setiap item data Q, jika transaksi Ti menjalankan operasi write(Q) terakhir pada schedule S, maka transaksi Ti pada schedule S’ juga harus menjalankan operasi write(Q) terakhir.
18
Identifikasi Transaksi dalam SQL
Dalam bahasa SQL, awal transaksi diidentifikasikan secara implisit (yang dimulai dari adanya perintah SQL), tetapi identifikasi akhir transaksi harus dinyatakan secara eksplisit dengan menggunakan salah satu dari kedua perintah berikut :
19
Identifikasi Transaksi dalam SQL
Commit Work atau Commit saja, berfungsi untuk mengubah transaksi dari status berhasil sebagian (partially commited) ke status berhasil sempurna (commited), sehingga transaksi dianggap berakhir dan siap memulai transaksi yang baru. Rollback Work atau Rollback saja, yang menyebabkan terjadinya pembatalan transaksi (transaksi berpindah ke status batal / aborted).
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.