Apa itu Transaksi Pangkalan Data?
A Transaksi Pangkalan Data ialah unit logik pemprosesan dalam DBMS yang melibatkan satu atau lebih operasi akses pangkalan data. Ringkasnya, transaksi pangkalan data mewakili peristiwa dunia nyata dari mana-mana syarikat.
Semua jenis operasi akses pangkalan data yang diadakan antara penyataan transaksi awal dan akhir dianggap sebagai transaksi logik tunggal dalam DBMS. Semasa transaksi pangkalan data tidak konsisten. Hanya setelah pangkalan data dilakukan, keadaan akan berubah dari satu keadaan yang konsisten ke keadaan yang lain.
Dalam tutorial ini, anda akan belajar:
- Fakta mengenai Transaksi Pangkalan Data
- Mengapa anda memerlukan kesesuaian dalam Transaksi?
- Keadaan Transaksi
- Apakah Sifat ACID?
- Jenis Urus Niaga
- Apa itu Jadual?
Fakta mengenai Transaksi Pangkalan Data
- Transaksi adalah unit program yang pelaksanaannya mungkin atau tidak mengubah kandungan pangkalan data.
- Konsep transaksi dalam DBMS dilaksanakan sebagai satu unit.
- Sekiranya operasi pangkalan data tidak mengemas kini pangkalan data tetapi hanya mengambil data, jenis transaksi ini disebut transaksi baca sahaja.
- Transaksi yang berjaya dapat mengubah pangkalan data dari satu NEGERI KONSISTEN ke yang lain
- Urus niaga DBMS mestilah bersifat atom, konsisten, terpencil dan tahan lama
- Sekiranya pangkalan data berada dalam keadaan tidak konsisten sebelum transaksi, ia akan tetap berada dalam keadaan tidak konsisten selepas transaksi.
Mengapa anda memerlukan kesesuaian dalam Transaksi?
Pangkalan data adalah sumber bersama yang diakses. Ia digunakan oleh banyak pengguna dan proses secara serentak. Contohnya, sistem perbankan, sistem tempahan kereta api, dan udara, pemantauan pasaran saham, inventori pasar raya, dan pembayaran, dll.
Tidak menguruskan akses serentak boleh menimbulkan masalah seperti:
- Kegagalan perkakasan dan kerosakan sistem
- Pelaksanaan transaksi yang sama, kebuntuan, atau prestasi yang perlahan
Keadaan Transaksi
Pelbagai keadaan konsep transaksi di DBMS disenaraikan di bawah:
Nyatakan | Jenis urus niaga |
Keadaan Aktif | Transaksi memasuki keadaan aktif ketika proses pelaksanaan dimulakan. Semasa keadaan ini operasi membaca atau menulis dapat dilakukan. |
Komited Sebahagian | Urus niaga berjalan ke keadaan yang sebahagiannya dilakukan setelah berakhirnya transaksi. |
Negara yang komited | Apabila urus niaga dibuat untuk dinyatakan, ia telah berjaya menyelesaikan pelaksanaannya. Lebih-lebih lagi, semua perubahannya direkodkan ke pangkalan data secara kekal. |
Negeri yang Gagal | Transaksi dianggap gagal apabila salah satu cek gagal atau jika transaksi dibatalkan semasa dalam keadaan aktif. |
Negeri yang ditamatkan | Keadaan transaksi mencapai keadaan yang dihentikan ketika transaksi tertentu yang meninggalkan sistem tidak dapat dimulakan semula. |

Mari kita pelajari gambarajah peralihan keadaan yang menyoroti bagaimana transaksi bergerak di antara pelbagai keadaan ini.
- Setelah transaksi menyatakan pelaksanaan, ia menjadi aktif. Ia boleh mengeluarkan operasi BACA atau MENULIS.
- Setelah operasi BACA dan TULIS selesai, urus niaga menjadi keadaan sebahagiannya dilakukan.
- Seterusnya, beberapa protokol pemulihan perlu memastikan bahawa kegagalan sistem tidak akan mengakibatkan ketidakupayaan untuk merekod perubahan dalam transaksi secara kekal. Sekiranya cek ini berjaya, urus niaga tersebut dilakukan dan memasuki keadaan komited.
- Sekiranya cek gagal, transaksi akan menuju ke keadaan Gagal.
- Sekiranya transaksi dibatalkan semasa berada dalam keadaan aktif, ia akan ke keadaan gagal. Urus niaga harus dipulangkan untuk mengurungkan kesan operasi penulisannya di pangkalan data.
- Keadaan yang dihentikan merujuk kepada transaksi yang meninggalkan sistem.
Apakah Sifat ACID?
ACID Properties digunakan untuk menjaga integriti pangkalan data semasa proses transaksi. ACID dalam DBMS adalah singkatan dari A tomicity, C onsistency, I solation, and D urability.
- Atomisitas: Transaksi adalah satu unit operasi. Anda sama ada melaksanakannya sepenuhnya atau sama sekali tidak melaksanakannya. Tidak boleh ada pelaksanaan separa.
- Konsistensi: Setelah transaksi dijalankan, ia harus berpindah dari satu keadaan yang konsisten ke keadaan yang lain.
- Pengasingan: Transaksi harus dilaksanakan secara terpisah dari transaksi lain (tidak ada Kunci). Semasa pelaksanaan transaksi serentak, hasil urus niaga antara transaksi yang dilaksanakan secara serentak tidak boleh saling tersedia. (Tahap 0,1,2,3)
- Ketahanan: · Setelah berjaya menyelesaikan transaksi, perubahan dalam pangkalan data harus berterusan. Walaupun berlaku kegagalan sistem.
Harta ACID di DBMS dengan contoh:
Berikut adalah contoh harta ACID di DBMS:
Transaction 1: Begin X=X+50, Y = Y-50 ENDTransaction 2: Begin X=1.1*X, Y=1.1*Y END
Transaksi 1 memindahkan $ 50 dari akaun X ke akaun Y.
Transaksi 2 adalah mengkreditkan setiap akaun dengan pembayaran faedah 10%.
Sekiranya kedua-dua transaksi dihantar bersama, tidak ada jaminan bahawa Transaksi 1 akan dilaksanakan sebelum Transaksi 2 atau sebaliknya. Tanpa mengira pesanan, hasilnya mestilah seolah-olah urus niaga berlaku secara berurutan satu demi satu.
Jenis Urus Niaga
Berdasarkan kawasan Permohonan
- Tidak diedarkan berbanding diedarkan
- Mengganti urus niaga
- Masa Transaksi
- Dalam talian berbanding kumpulan
Berdasarkan Tindakan
- Dua langkah
- Terhad
- Model tindakan
Berdasarkan Struktur
- Urus niaga rata atau sederhana: Ia terdiri daripada urutan operasi primitif yang dijalankan antara operasi awal dan akhir.
- Transaksi bersarang: Transaksi yang mengandungi urus niaga lain.
- Aliran Kerja
Apa itu Jadual?
Jadual adalah proses membuat satu kumpulan dari pelbagai transaksi selari dan melaksanakannya satu persatu. Ia harus mengekalkan urutan arahan yang terdapat dalam setiap transaksi. Sekiranya dua transaksi dijalankan pada masa yang sama, hasil satu transaksi boleh mempengaruhi output yang lain.
Contohnya
Initial Product Quantity is 10Transaction 1: Update Product Quantity to 50Transaction 2: Read Product Quantity
Sekiranya Transaksi 2 dilaksanakan sebelum Transaksi 1, maklumat lama mengenai kuantiti produk akan dibaca. Oleh itu, jadual diperlukan.
Pelaksanaan selari dalam pangkalan data tidak dapat dielakkan. Tetapi, pelaksanaan selari dibenarkan apabila terdapat hubungan kesetaraan antara transaksi yang dijalankan secara serentak. Kesetaraan ini terdiri daripada 3 Jenis.
KEPENTINGAN HASIL:
Sekiranya dua jadual menunjukkan hasil yang sama setelah pelaksanaan, ia disebut jadual setara hasil. Mereka mungkin memberikan hasil yang sama untuk beberapa nilai dan hasil yang berbeza untuk set nilai yang lain. Sebagai contoh, satu transaksi mengemas kini kuantiti produk, sementara yang lain mengemas kini butiran pelanggan.
Lihat Kesetaraan
Lihat Kesetaraan berlaku apabila transaksi dalam kedua-dua jadual melakukan tindakan yang serupa. Contohnya, satu transaksi memasukkan butiran produk dalam jadual produk, sementara satu transaksi memasukkan butiran produk dalam jadual arkib. Transaksinya sama, tetapi jadualnya berbeza.
Kesetaraan KONFLIK
Dalam kes ini, dua transaksi mengemas kini / melihat set data yang sama. Terdapat konflik di antara transaksi kerana urutan pelaksanaan akan mempengaruhi output.
Apa itu Serializability?
Serializability adalah proses mencari jadual serentak yang menghasilkan sama dengan jadual bersiri di mana transaksi dijalankan satu demi satu. Bergantung pada jenis jadual, terdapat dua jenis kebolehpasaran:
- Konflik
- Pandangan
Ringkasan:
- Pengurusan transaksi adalah unit pemprosesan logik dalam DBMS yang memerlukan satu atau lebih operasi akses pangkalan data
- Ini adalah transaksi adalah unit program yang pelaksanaannya mungkin atau tidak mengubah isi pangkalan data.
- Tidak menguruskan akses serentak boleh menimbulkan masalah seperti kegagalan perkakasan dan kerosakan sistem.
- Aktif, Komited Sebahagian, Komited, Gagal & Tamatkan adalah keadaan transaksi yang penting.
- Bentuk penuh ACID Properties dalam DBMS adalah Atomicity, Consistency, Isolation, and Durability
- Tiga jenis transaksi DBMS adalah berdasarkan Kawasan Aplikasi, Tindakan & Struktur.
- Jadual adalah proses membuat satu kumpulan dari pelbagai transaksi selari dan melaksanakannya satu persatu.
- Serializability adalah proses mencari jadual serentak yang outputnya sama dengan jadual bersiri di mana transaksi dilaksanakan satu demi satu.