Anda di halaman 1dari 14

BASIS DATA MANAJEMEN

TRANSAKSI
Anggota :
Fikri Hermawan 3411151070
Firli Iqbal R 3411131091
Hari Ramdani 3411151036
Muhamad Zikri 3411151030
Oky Noviansyah 3411131125
LATAR BELAKANG
Dalam kehidupan sehari-hari kita tidak akan pernah lepas bahkan jauh dari yang
namanya manajemen transaksi, karena dimanapun kita berada pasti kita akan
merasakan yang namanya transaksi misalkan saja apabila kita ingin melakukan jual beli
pasti kita akan mengadakan yang namanya manajemen transaksi sehingga manajemen
transaksi dalam kehidupan tidak bisa dilepaskan.
Manajemen transaksi terjadi bukan hanya ketika kita jual beli atau dalam kehidupan
riil kita namun manajeman transaksi juga akan kita rasakan dalam kehidupan
program/aplikasi terutama pada basis data.
Manajemen transaksi ini dilakukan untuk mengatur transaksi-transaksi yang
digunakan/diakses oleh suatu aplikasi/sistem.
RUMUSAN MASALAH
• Apa itu Manajemen Transaksi ?
PEMBAHASAN
A. Transaksi
Transaksi adalah sebuah aksi atau serangkaian aksi, yang dilakukan oleh user atau aplikasi yang mengakses atau
mengubah isi dari database atau transaksi juga bisa diartikan sebagai pengeksekusian sebuah program/aplikasi yang melakukan
pengaksesan dan perubahan basis data
Namun Untuk menjamin agar integritas dapat tetap terpelihara maka setiap transaksi harus memiliki sifat-sifat:
1. Atomik, dimana semua operasi dalam transaksi dapat dikerjakan seluruhnya atau tidak sama sekali.
2. Konsisten, dimana eksekusi transaksi secara tunggal harus dapat menjamin data tetap konsisten setelah transaksi berakhir.
3. Terisolasi, jika pada sebuah sistem basis data terdapat sejumlah transaksi yang dilaksanakan secara bersamaan, maka semua
transaksi yang dilaksanakan pada saat yang bersamaan tersebut harus dapat dimulai dan bisa berakhir.
4. Bertahan, dimana perubahan data yang terjadi setelah sebuah transaksi berakhir dengan baik, harus dapat bertahan
bahkan jika seandainya sistem menjadi mati. Sebuah transaksi dapat menghasilkan dua kemungkinan:
a. Jika dilaksanakan lengkap seluruhnya, transaksi tersebut telah di commit dan basis data mencapai keadaan konsisten baru.
b. Jika transaksi tidak sukses, maka transaksi dibatalkan dan basis data dikembalikan ke keadaan konsisten
sebelumnya (rollback).
Lanjutan

Ketika transaksi dilaksanakan/ dilakukan dari awal sampai akhir maka terdapat beberapa kemungkinan yang akan terjadi,
yaitu :
1. Aktif (Active), yang merupakan status awal (initial state) sebuah transaksi yang menunjukkan transaksi tersebut masih
dieksekusi.
2. Berhasil Sebagian (Partially Committed), yaitu keadaan yang dicapai transaksi tepat pada saat operasi terakhir
dalam transaksi selesai dikerjakan.
3. Gagal (Failed), yang merupakan keadaan dimana sebuah transaksi terhenti pengeksekusiannya sebelum tuntas sama
sekali.
4. Batal (Aborted), yaitu keadaan dimana sebuah transaksi dianggap tidak/belum dikerjakan yang tentu dengan terlebih
dahulu diawali dengan mengembalikan semua data yang telah diubah ke nilai-nilai semula. (yang menjadi tanggung
jawab DBMS).
5. Berhasil Sempurna (Committed), keadaan dimana transaksi telah dinyatakan berhasil dikerjakan seluruhnya dan
basis data telah merefleksikan perubahan-perubahan yang memang diinginkan transaksi
Lanjutan

Operasi-operasi yang dapat dilakukan oleh transksi yaitu :


Ø read(x) : mengeksekusi operasi pembacaan (read)
Ø write(x) : mengeksekusi perintah penulisan kembali ke database (write).
Misalkan Transaksi transfer uang sebesar $50 dari rekening A ke rekening B, didefinisikan sbg berikut:
1. read (A)
2. A A – 50
3. write (A)
4. read (B)
5. B B + 50
6. write (B)
Concurrency Control

Konkurensi kontrol merupakan suatu sistem manajemen database ( DBMS ) konsep yang
digunakan untuk mengatasi konflik dengan mengakses simultan atau mengubah data yang dapat
terjadi dengan sistem multi-user. Kontrol konkurensi, bila diterapkan ke DBMS, dimaksudkan untuk
mengkoordinasikan transaksi simultan sambil menjaga integritas databanyaknya transaksi yang
dijalankan secara bersamaan dalam satu waktu (waktu bersamaan).
Kokurensi ini banyak yang menggunakannya hal tersebut dikarenakan beberapa fakor,
diantarany :
ü Idle time (waktu menganggur) kecil.
ü time (waktu tanggap) lebih baik.
Lanjutan

Akan tetapi konkurensi juga suka ada masalah, dan masalah umum yang
sering terjadi pada konkurensi adalah :
1. Masalah kehilangan modifikasi
2. Masalah kehilangan modifikasi sementara
3. Masalah analisa yang tidak konsisten
Namun ada dua cara atau mekanisme untuk menyelesaikan masalah-masalah di atas, yaitu :

1. Locking.
Locking adalah salah satu mekanisasi pengontrolan konkuren.
Konsep dasarnya adalah: ketika suatu transaksi memerlukan jaminan kalau record yang diinginkan tidak akan
berubah secara mendadak, maka diperlukan kunci untuk record tersebut.

2. Time Stamping
Salah satu alternatif concurrency control yang dapat menghilangkan deadlock adalah time stamping. Secara umum,
timestamping (TS) adalah penanda waktu saat transaksi terjadi. Hal ini untuk mengurutkan eksekusi transaksi agar
sama dengan eksekusi serial.
Time stamp dapat berupa:
a. Waktu sistem saat transaksi dimulai, atau
b. Penghitung logik (logical counter) yang terus bertambah nilainya tiap kali terjadi transaksi baru.
Recovery System
Recovery merupakan upaya untuk mengembalikan basis data ke keadaaan yang dianggap
benar setelah terjadinya suatu kegagalan.
Terdapat beberapa jenis pemulihan :
1. Pemulihan terhadap kegagalan transaksi : Kesatuan prosedur alam program yang dapat
mengubah / memperbarui data pada sejumlah tabel.
2. Pemulihan terhadap kegagalan media : Pemulihan karena kegagalan media dengan cara
mengambil atau memuat kembali salinan basis data (backup)
3. Pemulihan terhadap kegagalan sistem : Karena gangguan sistem, hang, listrik terputus
alirannya.
Skema Mekanisme Recovery
Dengan asumsi ruang disk yang dialokasikan untuk basis data tidak mengalami
kerusakan, maka ada 3 pilihan skema untuk menjalankan mekanisme recovery
secara otomatis begitu kerusakan atau kegagalan sistem telah terjadi. Ketiga skema
pilihan itu adalah:
1. File Log dengan Penundaan Pengubahan (Incremental Log With Defered Update)
2. File Log dengan Pengubahan langsung (Incremental Log With Immediate
Updates)
3. Page Bayangan (Shadow Paging), yang memerlukan akses ke disk yang lebih
sedikit.
Recovery Untuk Transaksi Konkuren
a. Interaksi dengan pengendalian konkurensi
Skema recovery ini akan banyak tergantung pada skema pengendalian konkurensi
yang digunakan. Untuk menjalankan proses roll back terhadap transaksi yang gagal/
batal,kita harus membatalkan perubahan yang telah dilakukan oleh transaksi
tersebut.
b. Restart recovery
Pada saat sistem melakukan pemulihan data, ia membentuk dua buah daftar. Yang
pertama adalah daftar undo (undo-list) yang terdiri atas transaksi-transaksi yang
harus dikenai operasi undo dan daftar redo (redo-list) yang berisi transaksi-transaksi
yang harus dikenai operasi redo.
PERTANYAAN
Kesimpulan
> Transaksi merupakan sebuah aksi untuk mengakses atau merubah basis data.
> Dalam transaksi terapat dua hasil atau output yaitu commit atau rollback
> Jika transaksi berjalan sukses maka dikatakan commit, sebaliknya jika transaksi tidak
berjalan sukses maka transaksi dibatalkan dan kembali ke keadaan semula dikatakan
rollback
> Data harus tetap konsisten
> Kontrol konkurensi merupakan suatumasalah yang timbul ketika beberapa proses
terjadi bersamaan
> Dua keuntungan apabila menggunakan konkurensi yaitu Idle time (waktu menganggur)
kecil dan time (waktu tanggap) lebih baik.

Anda mungkin juga menyukai