Sistem Basis Data ABU SALAM, M.KOM.

Slides:



Advertisements
Presentasi serupa
OVERVIEW • Transaksi merupakan bagian dari pengeksekusian sebuah program yang melakukan pengaksesan basis data dan bahkan juga melakukan serangkaian pengubahan.
Advertisements

Backup dan Recovery.
Manajemen Transaksi & Kontrol Konkurensi
Sistem Manajemen Basis Data Teknik Konkurensi
Pengenalan Database Kiky Rizky Nova Wardani, S.Kom.
Proteksi data BASIS DATA.
Presentasi Keamanan Basis Data “Transaction Management”
Manajemen Basis Data menggunakan SQL Server
Concurrency M-03.
Pertemuan ke 3 Konsep Proses
Desain Arsitektur Sistem
Pengenalan Basis Data Anna Kurniawati. Definisi Database “a collection of related data” (Elmazri & Navathe, 1994) “an organized collection of logically.
DATABASE CONTROL.
CONCURENCY CONTROL DISTRIBUTED DATABASE. M AIN TOPICS Transaction managements Centralized database Distributed database Consistency control Centralized.
Sistem Terdistribusi.
Proteksi data BASIS DATA.
PENGONTROLAN KONKURENSI & RECOVERY
Administrasi Basis Data
TRANSAKSI DAN PENGENDALIAN PERSAINGAN
1 OTORISASI. Aturan Otorisasi Aturan otorisasi: kontrol yang melekat dalam sistem manajemen data yang membatasi akses thd data dan tindakan- tindakan.
PERTEMUAN 8 Teknik recovery.
Manajemen Transaksi (1)
Transaksi Konsep Transaksi Status transaksi
BAB 1 Pengenalan Database dan DBMS
Collabnet Overview v Informatika BAB XIII Menangani Transaksi.
TRANSACTION MANAGEMENT
TRANSAKSI DAN PENGENDALIAN PERSAINGAN
1 concurrency. Concurrency Sejumlah transaksi diperkenankan untuk mengakses data yang sama dalam aktu yang bersamaan.
Sistem Operasi Pertemuan 24.
MANAJEMEN SUMBER DAYA DATA
Serializabilitas Two Phase Locking
Wahyu nurjaya wk, st., m.kom.
Manajemen Transaksi #5 D. SINAGA, M.KOM.
Recovery Adapted from: Connolly, Thomas., et.al., Database System. Wokingham England: Addison-Wesley Publishing Company.
Sistem Basis Data ABU SALAM, M.KOM.
Database Management Systems Bab 9 Overview Manajemen Transaksi (Chap
Proteksi data BASIS DATA.
Pengamanan Sistem Basis Data
Backup & Recovery Sistem Basis Data.
Pertemuan 13 LINGKUNGAN DATABASE.
Backup & Recovery.
TRANSACTION MANAGEMENT
Brilliani Ayunda Putri
Pengamanan Basis Data.
Manajemen Basis Data menggunakan SQL Server
TRANSAKSI DAN PENGENDALIAN PERSAINGAN
Bab 2 Mengenal Data Base Management System (DBMS)
Sistem Basis Data ABU SALAM, M.KOM.
SISTEM DATABASE.
Materi Kuliah ke 14 Proteksi data BASIS DATA.
Sistem Manajemen Basis Data
Pertemuan <<10>> Transaksi Manajemen
PENGANTAR STRUCTURED QUERY LANGUAGE (SQL)
Keamanan database Jimmy Baharuddin
PERANCANGAN PERANGKAT LUNAK REAL-TIME
Pemrograman Visual II Database Management System (DBMS)
SISTEM BASIS DATA *** Anggia Meisesari, S.T., M.T., MOS. ***
introduction database system
Serializabilitas Two Phase Locking
Transaksi Konsep Transaksi Status transaksi
Koordinasi Antar Proses DI DALAM SISTEM TERDISTRIBUSI
PROTEKSI DATA Materi Pertemuan 27 & 28.
PROTEKSI DATA SBD - 12.
Proteksi data (concurrency)
Pemulihan Basis Data D. Sinaga, M.Kom.
Manajemen Transaksi D. SINAGA, M.KOM.
Kiky Rizky Nova Wardani, S.Kom
SHARE DATA & TRANSACTION
Lingkungan Basis Data.
Proteksi Data Pertemuan 13.
Transcript presentasi:

Sistem Basis Data ABU SALAM, M.KOM

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.

–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

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.

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.

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.

Contoh Schedule 3 yang disederhanakan. T1 T2 read (A) write (A) read (B) write (B)

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

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

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()

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)

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.

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:

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

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.

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 :

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.

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 :

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).