KONTROL KONKURENSI TERDISTRIBUSI (DCC)

dokumen-dokumen yang mirip
Manajemen Transaksi. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom

Manajemen Transaksi (Penjadwalan & Kontrol konkurensi)

Desain Aplikasi. by: Ahmad Syauqi Ahsan

SISTEM BASIS DATA (KONTROL KONKURENSI) Alif Finandhita,S.Kom, M.T.

Penguncian pada Concurrency Control

Distributed System. 9 Concurrency Control. Genap 2011/2012. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

MANAJEMEN TRANSAKSI. Alif Finandhita, S.Kom

Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Caca E. Supriana, S.Si.,MT.

Nama : Putra Adi Nugraha dan Priska Kalista Kelas : B

Concurrency Control Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si

PENGONTROLAN KONKURENSI

sistem basis data ti ti ukdw Transaksi Budi Susanto Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 11/14/11 budi susanto 1

Koordinasi Antar Proses

Distributed System. 8 Management Transaksi. Genap 2011/2012. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.

Mekanisme Penanganan Deadlock Dalam Pemrosesan Transaksi Oleh DBMS Menggunakan Algoritma Backtracking

DISTRIBUTED TRANSACTIONS

Distributed Transaction

Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Caca E. Supriana, S.Si.,MT.

Transaction & Conccurency

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

SINKRONISASI. Sistem terdistribusi week 5

BAB I PENDAHULUAN BAB 1 PENDAHULUAN

Replikasi. Ridzky Novasandro, Alvian Edo Kautsar, Jurusan Teknik Elektro FT UGM, Yogyakarta

PENDAHULUAN PENDAHULUAN TRANSAKSI TRANSAKSI TRANSAKSI 24/04/2016 TEKNIK RECOVERY

Transactions and Concurrency Control

Replikasi adalah suatu teknik untuk melakukan copy / pendistribusian data dan objek-objek dalam melaksanakan sinkronisasi antara objek sehingga

Administrasi Basis Data. Transaksi dan Lock. Yoannita

TSI Perbankan MANAJEMEN DATA LOCK. Obyektif : 1. Mengetahui konsep lock 2. Mengetahui konsep share pada file database. AS/400 hal. B.

Arsitektur Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

JMA, VOL. 2, NO. 1, JULI, 2003, ALGORITMA ROCC FAHREN BUKHARI

Sistem Operasi. Konkurensi

Modul Praktikum Sistem Basis Data 2010

Teknik Informatika Universitas Pasundan. Caca E. Supriana, S.Si.,MT.

MODIFIKASI DAN EVALUASI KINERJA ALGORITMA READ-COMMIT ORDER CONCURRENCY CONTROL (ROCC)

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

MODUL 5 MANAJEMEN PROSES (2) (PENJADWALAN PROSES)

Pertemuan XII Distributed Database Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

CONSISTENCY & REPLICATION. Sistem terdistribusi week 7

DEADLOCK & RECOVERY SYSTEM

MERANCANG WEB DATA BASE UNTUK CONTENT SERVER

BAB 2 TINJAUAN PUSTAKA

LINGKUNGAN DATABASE Baca R Modifikasi R -

DATABASE TERDISTRIBUSI

Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama.

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 5 DISTRIBUSI DAN FRAGMENTASI DATA


6/26/2011. Database Terdistribusi. Database Terdesentralisasi

Consistency and Replication

Database dalam Sistem Terdistribusi

PROTOKOL CONCURRENCY CONTROL PADA REAL-TIME DATABASE SYSTEM

Praktikum MONITORING AND RESOLVING LOCK CONFLICTS. Tujuan :

DISTRIBUTED TRANSACTIONS. Willy Sudiarto Raharjo

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 5 DISTRIBUSI DAN FRAGMENTASI DATA

TEKNIK RECOVERY (ref. Fundamentals of DB Systems, Elmasri, N)

BAB IV ANALISIS DAN PERANCANGAN

PENGONTROLAN BERBASIS KOMPUTER

MANAGEMEN TRANSAKSI. Ferdi Yusuf #1

TSI Perbankan REPLIKASI

Model Sistem Terdistribusi

Manajemen Transaksi. Praktikum Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

UNIVERSITAS BINA NUSANTARA. Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007

Pertemuan Ke-3 Struktur Interkonesi (Bus System)

BAB 03 Bus & Sistem Interkoneksi

Database dalam Sistem Terdistribusi

BASIS DATA TERDISTRIBUSI

DATABASE CONTROL 1. SECURITY DATABASE. Suzan Agustri 81

Kusnawi, S.Kom, M.Eng

Manajemen Transaksi. Sistem Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

Sistem Basis Data Terdistribusi Arif Basofi

Database Terdistribusi. by: Ahmad Syauqi Ahsan

Manajemen Transaksi A. Konsep Transaksi 1. Membuat Tabel account dengan type Innodb

Kelebihan Architecture layered: memecahkan layer menjadi bagian yang lebih kecil

Sistem Bus. (Pertemuan ke-10) Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom. (INTERKONEKSI antar BAGIAN UTAMA KOMPUTER)

BAB II KAJIAN PUSTAKA

Gambar Layar pertama untuk pemecahan masalah Lost Update

BAB III ANALISA DAN DESAIN SISTEM

Transaksi Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si

SISTEM BASIS DATA BACKUP DAN RECOVERY. Backup Data. Restore Data. DENI HERMAWAN Informatika

Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Caca E. Supriana, S.Si.,MT.

Pertemuan IX MANAJEMEN TRANSAKSI

Pemahaman mengenai Model arsitektur SisTer Mengetahui Sudut pandang logis Arsitektur Sistem Tersebar. Memahami model Arsitektur sistem

P11 BUS Universitas Mercu Buana Yogyakarta

BASIS DATA TERDISTRIBUSI

DATABASE TERDISTRIBUSI (DISTRIBUTED DATABASE= DDB)

[Data Warehouse] [6/C2 & 6/D2]

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

ELEMENT OF BUS DESIGN. Pengertian Sistem bus adalah Penghubung bagi keseluruhan komponen computer dalam menjalankan tugasnya.

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

5. Aktivitas generic dalam semua proses perangkat lunak antara lain adalah : a. Spesifikasi dan pengembangan b. Validasi dan evolusi c.

Sinkronisasi dan Deadlock Sistem Operasi

Transaction & Conccurency

DISTRIBUTED FILE SYSTEMS

Perancangan Basis Data

SEKOLAH TINGGI INFORMATIKA & KOMPUTER INDONESIA (STIKI)

Rony Heri Irawan. Implementasi Sistem ERP

SKRIPSI DESAIN DAN IMPLEMENTASI SISTEM DATABASE TERDISTRIBUSI UNTUK PERENCANAAN BONGKAR MUAT PETIKEMAS

Sistem Operasi. Critical section, konkurensi, mutasi exclusion, starvation dan deadlock. Juliansyahwiran, S. Kom, MTI. Modul ke: Fakultas FASILKOM

BAB I PENDAHULUAN. untuk menyelesaikan masalah konkurensi pada sistem operasi. Mutual exclusion

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Transkripsi:

KONTROL KONKURENSI TERDISTRIBUSI (DCC) Mekanisme DCC ini memastikan kekonsistensi-an database. Jika transaksi konsisten secara internal, cara termudah adalah mengeksekusi satu transaksi satu per satu. Level konkurensi menjadi parameter yang terpenting dalam sistem terdistribusi. [Balter et.al, 1992] Mekanisme kontrol konkurensi berusaha menyeimbangkan antara konsistensi database dan level konkurensi yang tinggi. TEORI SERIAL Sebuah jadual S (disebut history) ditentukan sebagai sekumpulan transaksi T = {T 1, T 2,,T n } dan dispesifikasikan sebagai eksekusi operasi transaksi yang terurut. 2 buah operasi O ij (x) dan O kl (x) (i dan k tidak perlu berbeda) mengakses database entitas x yang sama, ini disebut dengan terjadinya konflik jika salah satu merupakan operasi tulis. Operasi baca tidak menjadikan konflik satu sama lain. Ada 2 macam tipe konflik : Read-write Write-write 2 buah transaksi menjadi konflik jika 2 buah operasi tersebut mengindikasikan bahwa urutan eksekusi adalah penting. Jadual yang lengkap S T c didefinisikan sebagai sekumpulan transaksi T = { T 1, T 2,,T n } merupakan urutan parsial S T c = {Σ T, p T } dimana M8 Sistem manajemen Basis Data 1

n 1. Σ T = U i=1 Σ i n 2. p T U i=1 p i 3. untuk setiap terjadi operasi konflik O ij dan O kl Σ T, O ij p T O kl atau O kl p T O ij. Diasumsikan ada 2 buah transaksi : T1 : read (x) T2 : read (x) x x + 1 x x + 1 write (x) write (x) Jadual lengkap : S T c untuk T = {T 1, T 2 } ditulis dalam urutan parsial S T c = {Σ T, p T }, dimana sehingga Σ 1 = {R 1 (x), W 1 (x),c 1 } Σ 2 = {R 2 (x), W 2 (x),c 2 } dan Σ T = Σ 1 U Σ 2 = {R 1 (x), W 1 (x),c 1, R 2 (x), W 2 (x),c 2 } p T = {(R 1,R 2 ),(R 1,W 1 ), (R 1,C 1 ), (R 1,W 2 ),(R 1,C 2 ), (R 2,W 1 ), (R 2,C 1 ),(R 2,W 2 ), (R 2,C 2 ), (W 1,C 1 ),(W 1,W 2 ), (W 1,C 2 ) (C 1,W 2 ),(C 1,C 2 ), (W 2,C 2 )} M8 Sistem manajemen Basis Data 2

R 1,(x) R 1,(x) W 1,(x) W 1,(x) C 1 C 2 Secara sederhana : S T c = = {R 1 (x), R 2 (x), W 1 (x),c 1, W 2 (x),c 2 } Jadual parsial : P = {Σ, p}, P = {Σ, p } merupakan awal / prefix dari P jika 1. Σ Σ; 2. e i Σ, e 1 p e 2 jika dan hanya jika e 1 p e 2 3. e i Σ, jika e j Σ dan e j p e i, maka jika e j Σ Diasumsikan ada 3 buah transaksi : T1 : read (x) T2 : write (x) T3 : Read(x) write (x) write (y) read(y) read(z) read(z) M8 Sistem manajemen Basis Data 3

jadual lengkap S c R 1 (x) W 2 (x) R 3 (x) W 1 (x) W 2 (y) R 3 (y) C 1 R 2 (z) R 3 (z) C 2 C 3 Prefix S c R 1 (x) W 2 (x) R 3 (x) W 2 (y) R 3 (y) R 2 (z) R 3 (z) Jika dalam sebuah jadual S, operasi dari berbagai transaksi terjadi secara berurutan, berarti jadual dikatakan serial. Contoh dari ketiga transaksi sebelumnya S = { W 2 (x), W 2 (y),r 2 (z), C 2, W 1 (x), R 1 (x), C 1, R 3 (x), R 3 (y), R 3 (z), C 3 } T 2 p S T 1 p S T 3 atau T 2 T 1 T 3 Konflik equivalence 2 buah jadual S 1 dan S 2 didefinisikan pada sekumpulan transaksi T, dikatakan equivalence jika untuk setiap pasangan operasi yang konflik O ij dan O kl (i k) dimanapun O ij p 1 O kl maka O ij p 2 O kl. M8 Sistem manajemen Basis Data 4

Sebuah jadual dikatakan dapat diserialkan (serializable) jika dan hanya jika dari konflik equivalence ke jadual berseri. Disebut juga dengan conflict-based serializability. Jadual eksekusi transaksi di setiap site disebut dengan jadual local. Jika database tidak direplikasi dan setiap jadual local diserialkan, gabungannya (jadual global) juga akan diserialkan. Contoh : T1 : read (x) T2 : read (x) x x + 5 x x * 10 write (x) write (x) Seharusnya kedua transaksi ini dilaksanakan di kedua site. misalnya ada 2 jadual yang dilaksanakan secara local di kedua site : S 1 = { R 1 (x), W 1 (x), C 1, R 2 (x), W 2 (x), C 2 } S 2 = { R 2 (x), W 2 (x), C 2, R 1 (x), W 1 (x), C 1 } Ini yang disebut mutually consistency di kedua database local. Konsistensi ini membutuhkan nilai yang sama/ identik untuk semua item data yang direplikasi. Jadualnya disebut dengan one-copy serializable. Ada kondisi2, yaitu : 1. Setiap jadual local diserialkan 2. 2 operasi konflik dibuat dalam urutan yang sama untuk semua jadual local dimana berada. M8 Sistem manajemen Basis Data 5

TAKSONOMI MEKANISME KONTROL KONKURENSI Algoritma kontrol konkurensi Optimistic Pesimistic Locking Timestamp ordering Locking Timestamp ordering hybrid Centralize d basic Primary copy multiversion Distributed conservative Metode pesimistik Mengsinkronkan eksekusi transaksi yang konkuren di awal siklus hidup eksekusi. Metode optimistic Menunda sinkronisasi dari transaksi hingga selesai. Pendekatan locking Sinkronisasi dari transaksi dicapai dengan lock fisik atau logika pada beberapa bagian dari database. Ukuran bagian ini (disebut locking granularity) menjadi hal yang penting. Centralized locking Satu site dibuat menjadi site utama dimana tabel yang terkunci/ lock untuk semua database disimpan dan diberikan tanggungjawab untuk membuka locking. M8 Sistem manajemen Basis Data 6

Primary copy locking Satu kopi untuk setiap unit lock dibuat sebagai kopi utama dan kopian ini harus dilock untuk tujuan pengaksesan unit tertentu. Misalnya jika unit x direplikasi ke site 1, 2 dan 3, salah satu site dipilih sebagai site utama untuk x. Semua transaksi yang mengakses x terkunci di site 1 sebelum dapat mengakses kopi x. jika database tidak terreplikasi mekanisme locking kopi utama mendistribusikan tanggungjawab manajemen lock diantara sejumlah site. Decentralized locking Tugas manajemen locking dibagi ke seluruh site dalam jaringan. Eksekusi sebuah transaksi melibatkan partisipasi dan koordinasi dari para penjadual di lebih dari satu site. Timestamp ordering (TO) melibatkan organisasi urutan eksekusi dari transaksi sehingga dapat dimaintain secara mutual dan interconsistency. Urutan ini dimaintain dengan menugaskan timestamp ke transaksi dan item data yang disimpan di database. Algoritma ini disebut TO dasar, TO multiversion, atau TO conservative. Hybrid Beberapa locking-based dan timestamp yang digunakan bersama. LOCKING-BASED CC Ide utamanya adalah untuk memastikan data dapat dibagi dengan operasi konflik yang diakses oleh satu operasi pada satu saat. Lock untuk setiap unit lock. Locking terjadi di transaksi sebelum diakses dan direset di akhir penggunaan. Unit lock tidak dapat diakses dengan sebuah operasi jika sudah dilock sebelumnya oleh yang lain. Permintaan lock oleh sebuah transaksi diberikan jika lock yang terhubung tidak ditahan oleh transaksi lainnya. M8 Sistem manajemen Basis Data 7

Ada 2 tipe lock (disebut mode lock) sehubungan dengan setiap unit lock : 1. Read lock (rl) 2. Write lock (wl) Tablenya : rl i (x) wl i (x) rl i (x) Compatible Not compatible wl i (x) Not compatible Not compatible Lihat potongan algoritma hal. 287 Ozsu. Contoh Ada 2 transaksi T1 : read (x) T2 : read (x) x = x + 1 read (y) write (x) y = y * 2 read(y) write(y) y = y 1 write(y) jadualnya adalah S = { wl 1 (x), R 1 (x), W 1 (x), lr 1 (x), rl 2 (x), R 2 (x), lr 2 (x), wl 2 (y), R r (y), W 2 (y), lr 2 (y), C 2, wl 1 (y), R 1 (y), W 1 (y), lr 1 (y), C 1 } lr i (z), membebaskan lock dari z yang menyebabkan transaksi T 1 tertahan. M8 Sistem manajemen Basis Data 8

2-phase locking lock tercapai lock dibebaskan jumlah lock Begin lock point end Durasi transaksi Strict 2-phase locking lock tercapai lock dibebaskan jumlah lock Begin Period of data item use end Durasi transaksi M8 Sistem manajemen Basis Data 9

Centralized 2PL Data processor at coordinating TM central site LM Participating sites 1. Lock request 3. operation 2. Lock granted 4. End of operation 5. Release lock Primary copy 2 PL Distributed 2 PL coordinating TM Participating LMs Participating DPs 1. Lock request 2. operation 3. End of operation 4. Release lock TIMESTAMP-BASED CC TO rule (Timestamp Ordering) Diberikan 2 operasi konflik O ij dan O kl terhadap transaksi T i dan T k dieksekusi sebelum O kl jika dan hanya jika ts(t i ) < ts(t i ). T i dikatakan transaksi yang lebih tua dan T k dikatakan transaksi yang lebih muda. M8 Sistem manajemen Basis Data 10

Basic TO Conservation TO Multiversion TO Lihat contoh algoritma hal. 300-301 untuk BTO OPTIMISTIC CC Fase dari eksekusi transaksi yang pesimistik Validate read compute write Fase dari eksekusi transaksi yang optimistic Read compute validate write Skenario yang memungkinkan Rule 1 R V W T k R V W T ij Jika semua transaksi T k, dimana ts(t k ) < ts(t ij )telah menyelesaikan fase tulis sebelum T ij memulai fase baca, validasi berhasil karena eksekusi transaksi secara terurut serial. Rule 2 T k R V W T ij R V W M8 Sistem manajemen Basis Data 11

Jika ada transaksi T k yang ts(t k ) < ts(t ij ) telah menyelesaikan fase tulis dimana T ij berada pada fase baca, validasi berhasil jika WS(T k ) RS(T ij ) = Rule 3 T k R V W R V W T ij Jika ada transaksi T k yang ts(t k ) < ts(t ij ) telah menyelesaikan fase baca sebelum T ij berada pada fase baca, validasi berhasil jika WS(T k ) RS(T ij ) = dan WS(T k ) WS(T ij ) =. M8 Sistem manajemen Basis Data 12