Friday, July 8, 2016

TRANSACTIONS AND CONCURRENCY CONTROL

Dalam Sistem Terdistribusi terdapat Transaksi. Tujuan transaksi disini adalah untuk menjamin semua obyek yang ditangani oleh server tetap dalam keadaan konsisten pada saat obyek – obyek tersebut diakses oleh beberapa macam transaksi dan juga pada saat adanya crash pada server.
Obyek yang dapat dipulihkan setelah terjadinya crash disebut dengan recoverable objects.
Sinkronisasi simpel 
Salah satu isu yang sering ditemui berhubungan dengan masalah transaksi adalah saling mengganggunya informasi satu client dengan client yang lain. Hal tersebut dapat menimbulkan kesalahan nilai pada obyek
Atomic operations pada server
telah diketahui bahwa penggunaan multi threads sangat bermanfaat bagi server, selain itu penggunaan threads memperbolehkan operasi dari beberapa client untuk berjalan secara bersamaan dan mengakses obyek yang sama
Peningkatan kerjasama client dengan sinkronisasi operasi pada server
Client dapat menggunakan server sebagai media untuk berbagi resource yang dimilikinya
Hal ini dapat dilakukan dengan sebuah operasi untuk mengupdate obyek pada server dan client lain menggunakan operasi lain untuk mengakses obyek tersebut
Atomic Transaction adalah transaksi yang memiliki sifat :
All or nothing : transaksi dapat berhasil sepenuhnya atau tidak sama sekali.
Isolation : tiap – tiap transaksi harus dilakukan tanpa adanya gangguan dari transaksi lain
Kontrol Konkurensi
Lost update problem -> adalah suatu masalah yang timbul akibat dihiraukannya informasi pada saat ada update dari operasi lain yang hampir bersamaan waktunya.
Inconsistent retrievals -> adalah permasalahan mengenai informasi update suatu operasi yang belum didapatkan oleh operasi lain saat operasi tersebut berjalan
Serial equivalence -> adalah kriteria untuk mengkoreksi eksekusi secara bersamaan yang bertujuan untuk menghindari adanya lost update problems dan inconsistent retrievals.
Conflicting operations -> adalah adanya konflik antara dua atau lebih operasi yang efeknya saling bertentangan
Kemampuan Recovery dari Pembatalan Operasi
Server harus mencatat setiap efek dari transaksi yang dilakukan dan tidak mencatat efek pembatalan transaksi
Ada beberapa masalah yang umum berkaitan dengan pembatalan transaksi. Masalah ini semisal ‘dirty read’ dan ‘premature writes’ yang mana keduanya dapat terjadi pada saat pengeksekusian transaksi
Premature writes -> adalah masalah yang timbul akibat adanya pembatalan operasi write pada suatu obyek yang mempengaruhi operasi write pada transaksi lain dalam obyek tersebut
Dirty read  adalah masalah yang disebabkan oleh interaksi antara operasi read dan operasi write yang lebih dahulu berlangsung, namun dibatalkan pada obyek yang sama

No comments:

Post a Comment