Manajemen transaksi adalah proses integral dari sistem manajemen basis data (DBMS)Â di mana perangkat lunak manajemen transaksi mengawasi, mengoordinasikan, dan mengeksekusi setiap transaksi yang dicoba.
Perangkat lunak manajemen transaksi untuk otomatisasi alur kerja adalah bagian penting dari industri apa pun yang melibatkan pemrosesan transaksi, termasuk ecommerce, keuangan, perhotelan, dan bisnis apa pun yang memerlukan manajemen basis data yang akurat.
Secara kritis, perangkat lunak manajemen transaksi bergantung pada konsep atomisitas untuk mendefinisikan transaksi tunggal sebagai serangkaian operasi yang harus diselesaikan, atau tidak ada yang dianggap selesai. Dengan kata lain, untuk menjaga konsistensi data, sistem manajemen transaksi memastikan bahwa transaksi tidak akan pernah diselesaikan hanya sebagian.
Sebagai contoh, ketika seseorang mencoba menarik uang dari ATM, perangkat lunak manajemen transaksi memproses permintaan dan perubahan basis data yang diperlukan untuk memeriksa saldo rekening mereka, mengurangi jumlah yang diminta, memperbarui catatan bank, dan mengeluarkan uang tunai yang diambil. Semua langkah ini dianggap sebagai satu transaksi baru, dan sistem manajemen transaksi memastikan bahwa seluruh proses telah selesai untuk mencegah ketidakkonsistenan dalam basis data bank dan mempertahankan buku besar yang akurat.
Selama transaksi, keadaan basis data yang berkorelasi berubah dan dianggap tidak konsisten. Selama waktu ini, transaksi dapat melakukan sejumlah operasi baca dan/atau tulis dengan membaca basis data untuk memberikan informasi (seperti memeriksa saldo rekening bank) dan/atau menulis informasi baru ke basis data (seperti memperbarui saldo rekening setelah penarikan). Hanya setelah transaksi selesai sepenuhnya, basis data dapat kembali ke keadaan konsisten baru.
Prinsip atomisitas memungkinkan perangkat lunak manajemen transaksi untuk memperlakukan serangkaian operasi diskrit sebagai transaksi tunggal sekaligus melindungi integritas basis data.
Atomisitas mencegah kesalahan yang dapat timbul dari transaksi yang tidak lengkap atau terputus. Kembali ke contoh ATM, atomisitas mencegah transaksi mendebet uang dari rekening bank pengguna sebelum mengeluarkan uang tunai yang sebenarnya. Jika terjadi kerusakan sistem yang menyebabkan ATM tidak dapat mengeluarkan uang, seluruh transaksi akan dibatalkan, dan tidak ada perubahan yang dilakukan pada basis data atau rekening pengguna.
Ketika transaksi sedang berlangsung, dan database sedang berubah, transaksi dapat dipecah menjadi beberapa status transaksi yang berurutan.
Setelah transaksi dimulai, transaksi masuk ke dalam keadaan aktif di mana operasi baca dan tulis database dapat terjadi.
Setelah semua langkah yang diperlukan dari sebuah transaksi selesai, transaksi dianggap hanya dilakukan sebagian sampai database master diperbarui.
Setelah transaksi selesai dengan sukses, lalu diterapkan ke basis data, memasuki status berkomitmen.
Ketika suatu transaksi gagal untuk melaksanakan satu atau lebih dari operasinya atau dibatalkan, itu dianggap dalam keadaan gagal. Transaksi yang gagal akan memicu rollback, yang membatalkan perubahan basis data yang sedang berlangsung.
Keadaan terakhir untuk semua transaksi, transaksi dalam keadaan dihentikan dikeluarkan dari sistem dan tidak dapat lagi melakukan operasi database apa pun.
Semua transaksi dimulai dalam keadaan aktif, dan jika tidak ada masalah, mereka maju ke keadaan berkomitmen sebagian, berkomitmen dan kemudian dihentikan. Jika masalah muncul selama pemrosesan transaksi, transaksi akan memasuki status gagal dan mengembalikan setiap dan semua perubahan yang dilakukan selama transaksi. Transaksi kemudian dapat mencoba kembali untuk mengeksekusi, atau membatalkan. Apakah dibatalkan atau berkomitmen, semua transaksi yang berkomitmen akhirnya memasuki keadaan dihentikan, membebaskan sumber daya bagi DBMS untuk memproses transaksi baru.
Dalam bidang manajemen database, atomisitas hanyalah salah satu dari empat properti penting yang diperlukan untuk menjaga integritas database. Disebut dengan akronim ACID, keempat properti tersebut adalah atomisitas, konsistensi, isolasi dan daya tahan:
Sebagai salah satu aspek dari DBMS, sistem manajemen transaksi bergantung pada sejumlah teknologi database dan perangkat lunak yang menawarkan berbagai tingkat optimasi, seperti otomatisasi, template, dan daftar periksa. Vendor seperti IBM, Microsoft dan Oracle menawarkan berbagai solusi manajemen transaksi dengan harga yang kompetitif. Teknologi manajemen transaksi yang lebih luas meliputi berikut ini.
SQL adalah bahasa pemrograman standar untuk menyimpan dan memproses informasi dalam database relasional. Perintah SQL umumnya termasuk BEGIN TRANSACTION, COMMIT dan ROLLBACK.
JTA adalah antarmuka pemrograman aplikasi (API) standar untuk aplikasi perusahaan, memungkinkan aplikasi manajemen transaksi untuk berkomunikasi dengan jenis aplikasi lain, termasuk basis data dan sistem pesan, sambil memastikan atomisitas dan konsistensi.
Berbagai industri bergantung pada manajemen transaksi untuk mengelola basis data relasional secara efektif dan efisien serta sumber daya operasional penting yang diwakilinya, baik yang bersifat fisik (inventaris) maupun fana (informasi).
Daftar singkat contoh penggunaan manajemen transaksi umum meliputi yang berikut ini.
Layanan keuangan, termasuk perusahaan pialang dan lembaga perbankan, bergantung pada manajemen transaksi tidak hanya dalam operasi sehari-hari tetapi juga dalam bisnis mikrodetik ke mikrodetik. Tanpa manajemen transaksi, produk umum seperti rekening giro modern dan platform perdagangan saham tidak akan dapat dilakukan.
Untuk platform retail online, manajemen transaksi memfasilitasi pemrosesan pesanan, pembayaran, dan manajemen inventaris untuk memenuhi pesanan ecommerce secara efektif.
Dalam dunia real estat yang rumit, koordinator transaksi profesional mengandalkan perangkat lunak manajemen transaksi untuk merampingkan pembelian, penjualan, dan penyewaan properti.
Sistem CRM seperti Salesforce sangat penting bagi organisasi besar untuk melacak dan mengelola prospek, interaksi pelanggan, pesanan penjualan, dan berbagai titik kontak tambahan yang dapat diakses melalui DBSM dan manajemen transaksi.
Manajemen transaksi adalah bagian penting dari banyak operasi bisnis modern. Namun, manajemen transaksi yang andal harus mampu memitigasi tantangan penting tertentu: