Senin, 10 Oktober 2011

Mengenal Konsep Database : Transaksi


Halo , apa kabar ? Kali ini saya mau berbagi pengetahuan tentang salah satu element penting dalam dunia database , element ini disebut transaksi.

Pengertian
Transaksi dalam dunia database berarti melakukan suatu rentetan proses yang apabila salah satu dari rentetan itu gagal maka keseluruhannya dianggap gagal dan sebaliknya apabila keseluruhan itu berhasil maka dianggap berhasil.

Aplikasi di Dunia Nyata
Transaksi dalam dunia sehari - hari sering kita jumpai, yang paling sering adalah proses penarikan uang di atm. Tentu kita semua pernah menarik uang di atm, nah sebenarnya dalam dunia database hal ini erat kaitannya dengan transaksi. Mari kita lihat urutan proses ke bagian yang lebih kecil dari proses tarik uang ini


Proses Normal :
1. Masukan Nilai uang yang akan diambil
2. Server bank akan mengecek jumlah uang, jika jumlah uang yang ada dikurang jumlah uang
yang diminta lebih besar atau sama maka
3. atm mengeluarkan uang
4. saldo di database bank terupdate.
Proses Tidak Normal bisa disebabkan oleh hal2 lain diluar kendali sistem, misal :
1. koneksi terputus
2. listrik mati di atm
3. software atm tiba2 hang.

Nah, kebayang kan jika bank tidak menerapkan prinsip transaksi dalam operasi penarikan uang di atm ? kemungkinan akan banyak yang ngaco.

Database Server
Sistem database yang banyak di pasaran seperti MS SQL Server,Oracle DB, PostgreSQL,Sybase,IBM DB2
sudah mendukung prinsip transaksi ini, jika tidak ? maka tentu sudah tidak digunakan oleh berbagai macam industri termasuk bank, pasar modal, perminyakan dan lain sebagainya.

MySQL
Karena sebagian besar dari kita lebih sering mengenal MySQL, maka saya akan membahas sedikit tentang MySQL yang sudah dimiliki oleh oracle ini. MySQL mendukung beberapa jenis filesystem, yang sering kita kenal antara lain MyISAM, CVS, dan InnoDB. Nah database filesystem yang mendukung transaksi di mysql adalah InnoDB sehingga apabila kamu mau menulis aplikasi/program yang membutuhkan transaksi maka gunakanlah InnoDB untuk tiap table yang kamu buat.

Happy Coding!

Tidak ada komentar:

Posting Komentar

Isi Komentar / Pertanyaan