Algotitma Replikasi Data Kompetitif Dinamis
-
Upload
rangga-ranggapati -
Category
Documents
-
view
125 -
download
0
Transcript of Algotitma Replikasi Data Kompetitif Dinamis
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 1/12
Algoritma Replikasi Data Kompetitif Dinamis
1 Pendahuluan
Skema replikasi dari sistem terdistribusi menggambarkan berapa banyak hasil
replikasi dari setiap objek dapat dihasilkan dan di prosesor mana hasil replikasi
dialokasikan. Skema ini mempengaruhi performa dari sistem terdistribusi, sejak dari
pembacaan sebuah objek, biasanya lebih murah dari pada read dari remote site.
Skema replikasi yang optimal tergantung pada pola read-write dari setiap objek.
Dahulu, dalam jaringan komputer, objek direplikasi dalam model statis,
contohnya skema replikasi data didisain oleh pengatur database terdistribusi dan
masih dipakai sampai replikasi manual dilakukan oleh pengatur. Jika pola baca dan
tulis telah selesai dan diketahui sebagai prioritas, ini adalah hal yang masuk akal.
Namun, jika pola baca dan tulis berubah menjadi dinamis, maka replikasi statis akan
menjadi problem performa.
Algoritma replikasi data kompetitif dinamis berdasarkan model primary-copy,
algoritma tersebut menyediakan one-copy serializability, dan mendistribusikannya
walaupun ada atau tidaknya keputusan untuk menyimpan hasil penggandaan objek
oleh site individual yang didasarkan pada pengumpulan statistik lokal. Algoritma
mengubah skema replikasi sebuah objek untuk mengoptimalkan biaya read-write
data. Selama pola read-write berubah maka skema replikasi juga berubah.
Algoritma replikasi data kompetitif dinamis juga terintegrasi. Sebuah
algoritma, mendistribusikan kembali sebuah replikasi biasanya terintegrasi dalam
proses pembacaan dan penulisan, malah dilakukan secara tersendiri. Sebagai contoh,
sebuah prossor s membuat replikasi sebuah objek dari site i, dalam merespon i dalam
meminta pembacaan objek dari s, s menbuat replika dengan cara memanipulasi,
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 2/12
dalam pesan ke i membawa replika objek, terindikasi bahwa i harus menyimpan
sebuah replika.
Performa dan reliabilitas adalah dua hal utama dalam replikasi data.
Banyak berorientas performa bekerja pada data terreplikasi
mempertimbangkan masalah statis replikasi, biasanya mengembangkan prioritas
sebuah skema replikasi akan mengoptimalkan performa, tetapi akan tetap
memperbaiki runtime. Hal ini disebut masalah pengalokasian file.
Pendekatan lain dalam meningkatkan performa dalam pengreplikasian
database terdistribusi. Secara teori ilmu komputer, yang telah bekerja pada algoritma
online, biasanya untuk membuat halaman, mencari, dan menyimpan. Pekerjaan ini
sama dengan algoritma replikasi data kompetitif dinamis dalam hal address
competitiveness. Walaupun, model-model tersebut dalam beberapa pekerjaan tidak
cocok untuk mengatur replikasi dalam database terdistribusi.
2 Algoritma Replikasi Data Kompetitif
Dijabarkan sebuah objek untuk menjadi data untuk direplikasi, dan skema
replikasi objek tersebut diatur sebagai site yang menampung replika objek. Sebuah
data site adalah site yang termasuk skema replikasi. Sebuah non site data adalah site
yang tidak termasuk skema replikasi. Dalam beberapa hal, salah satu data site
didesain sebagai primary site (p). awalnya skema replikasi mengandung p tersendiri.
Sewaktu-waktu sebuah site data melakukan permintaan pembacaan objek, hal
tersebut dilakukan secara lokal. Ketika non data site melakukan pembacaan,
permintaan dilanjutkan dan dilakukan oleh p, dan giliran p mengeksekusi penulisan
ke semua data site yang tersedia.
Setiap site dalam jaringan terdapat status,. Status 1 mengindikasikan bahwa
site tersebut adalah data site, stutus 0 mengindikasikan bahwa site t ersebut adalah
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 3/12
non data site. Setiap site mengetahui statusnya sendiri dan dimana tepatnya primary
site berada. Primary site mengetahui setiapa status site. Kami menjabarkan r-write
(remote write) dari site s menjadi write request dari site lain dalam jaringan.
Untuk setiap site s terdapat dua counter yang saling terhubung, berdasarkan di
mana status s ditentukan. Pertama adalah read-counter , yang menghitung berapa
banyak read s. kedua adalah r-write counter , menghitung berapa banyak r-write s
dari site.
Counter data site berdampingan dengan data site. Counter ini dapat diatur
sejak data site mengetahui berapa banyak read s dan r-write pada primary site.
Semua counter pada non data site berdampinagn pada primary site p. Counter inidapat diatur dalam p, sejak p mengetahui berapa banyak pembacaan pada non site
data dan penulisan site. Oleh karena itu, primary site memutuskan non data site akan
masuk atau tidak dalam skema replikasi, tergantung dari counter.
Kedua counter ini mengembangkan model replikasi saat ini. Sebuah site s
dalam skema replikasi meningkatkan biaya komunikasi setiap r-write, sejak
dieksekusi dalam s, dan menurunkan biaya saat read pada s. walaupun s masuk atau
tidak dalam skema replikasi, hal tersebut tidak mempengaruhi biaya komunikasiwrite dari s, dan read dari site selain s.
Dalam beberapa level, skema replikasi dapat berubah. Jika primary site
menerima beberapa read request dari non data site j, maka primary site memberitahu
j untuk masuk dalam skema replikasi. Jika primary site menerima beberapa write
request dari site selain j, maka akan menetapkan j di luar skema replikasi.
Algoritma tersebut adalah deskripsi dari bagaimana counter tersebut
digunakan untuk replikasi dinamis dan realokasi. Algoritma memiliki parameter k,
dimana menjelaskan seberapa sering skema replikasi berubah.
Algotitma replikasi data kompetitif dinamis
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 4/12
1. Setelah menbaca request , sebuah data site i melakukan read-counter , jika
read-counter sampai di k, kemudian i tetap dalam skema replikasi dan
melakukan reset action.
Reset action : mengeset read-counter dan r-write counter kembali 0
2. Saat menerima read dari non data site j, primary site p melakukan read-
counter j. jika read-counter sampai di k, lalu p merespon dengan
mengirimkan hasil copy objek ke j dan memberitahu j untuk memasuki skema
replikasi. spesifiknya, p melakukan join action j.
Join action : p merubah status site j dari 0 ke 1, dan memberitahu j
menyimpan copy untuk menginisialisasi counter nya sendiri.
3. Saat menerima write dari p, data site s, yang bukan primary site, tetap
melakukannya. S melakukan write-counter nya. Jika r-write counter nya
sampai di k, maka s akan keluar dari skema replikasi dan menginformasikan
primary site tentang perubahan ini dengan melakukan exit action.
Exit action : mengeset status s ke 0, dan memberitahu p untuk menginisialisasi
counter nya sendiri.
4. Saat menerima write request dari beberapa site, p melakukan write ke setiap
data site yang tersedia dan melakukan r-write counter dari non data site.
Untuk setiap r-write counter pada p yang sampai di k, p melakukan reset
action, Tambahan, jika permintaan penulisan tidak inisiatif dari p, dan r-write
counter p sampai di k, kemudian p keluar dari skema replikasi dengan
melakukan switch action.
Switch action :
• Jika tedapat site lain dalam skema replikasi, dan p memilih satu, s
memberitahu p untuk mematuhi peraturam utama.
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 5/12
• Sebaliknya p memilih pengirim dari permintaan penulisan, s
memberitahu p untuk mematuhi peraturam utama dan p melakukan
join action.
• Mengeset status p ke 0, dan beritahu s menginisialisai counter untuk p.
• P mengirim s stuatus dan counter yang disimpan p.
• P menyebarkan pesan ke setiap site dalam jaringan, mengindikasikan s
menjadi primary site baru.
Kami menjabarkan sebuah Action untuk site s sama dengan Exit , atau Reset
atau Join atau Switch. Contoh demontrasi algoritma (k) untuk (k=2)
Contoh 1 : seharusnya jaringan terdapat tiga site (1,2,3). Inisialisasi bahwa
terdapat sebuah single replika dari objek dalam site 1. Struktur komunikasi seperti
pada gambar 1 ( lingkaran hitam menggambarkan primary site, kotak hitam
menggambarkan data site, kotak putih menggambarkan non data site) urutan request
adalah sebagai berikut …………………………… dimana superscript
mengindikasikan order dari request dalam urutan, dan superscript memberitahu di
site mana request diinisiasi. Sebagai contoh,… berarti bahwa request kedelapanadalah read dari site 3, … berarti bahwa request keempat adalah write dari site 1.
Gambar 1
Untuk memulai algoritma (2), kita menginisialisasi status site 1 menjadi 1,
status lainnya 0, dan counter semua site menjadi 0 pada site 1. Tabel di bawah
mengindikasikan status site (abu-abu berarti site dalam skema replikasi) setelah setiap
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 6/12
request , nilai read-counter (di atas garis miring) dan r-write counter (di bawah garis
miring) untuk setiap request.
Setelah request 1, read-counter site 1 menjadi 1. Setelah request 2, read-
counter site 3 menjadi 1. Setelah request 3, read-counter site 2 menjadi 1. Setelah
request 4, read-counter site 2 dan site 3 menjadi 1. Request 5 membuat read-counter
site 3 mencapai k=2, site 1 ( primary site) menginisialisai Join Action untuk site 3, 3
menjadi data site baru, kedua counter nya dinisialisasi di site 3. Struktur komunikasi
diperlihatkan pada gambar 2. Setelah request 6, r-write counter site 1 menjadi 1.
Request 6 membuat r-write counter site 2 mencapai k=2, selanjutnya primary site
( site 1) menginisialisasi Reset Action untuk site 2, dan counter site 2 menjadi 0.
Setelah request 7, read-counter site 2 menjadi 1. Setelah request 8, read-counter site
3 menjadi 1. . Setelah request 9, r-write counter site 3 menjadi 1. Request 9 membuat
r-write counter site 1 mencapai k=2, selanjutnya primary site (site 1) menginisialisasi
Switch Action untuk dirinya sendiri, peran utamanya adalah diubah menjadi site 3
(data site lainnya) dan counter site 1 keduanya diubah menjadi 0. Struktur
komunikasi diperlihatkan pada gambar 3.
Gambar 2 Gambar 3
Setelah request 10, read-counter site 1 menjadi 1. Setelah request 11, r-write
counter site 2 menjadi 1 dan request ini membuar r-write counter site 3 mencapai
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 7/12
k=2. Site 3 menginisialisasi Switch Action untuk merubah peran primary site 3 ke site
1 (writer, non data site). Struktur komunikasi sama dengan gambar 1.
3 Isu Praktis
3.1 Kontrol Concurrency
Kontrol concurrency dapat dilakukan sebagai pengikut. Setiap write request
secara exklusif mengunci ( x-lock ) semua replika objek yang tersedia, dan setiap read
request shared lock ( s-lock ) primary site, atau local copy, tergantung pada site yang
melakukan read request . Setiap transaksi yang mengakses objek dieksekusi. Setiap
site mengeksekusi algoritma replikasi data kompetitif (melayani request , inisialisasi
Actions untuk merubah skema replikasi, mengirim pesan seperti yang diminta) antara
mengunci atau membuka objek.
Protokol “read one write all ” sebelumnya melayani one-copy serializability
(lihat [8], [9], dan [10]). Walaupun arti “all (semua)” dalam konteks berubah secara
dinamik, perubahan skema replikasi ketika transaksi berisi pengunci ( lock ), untuk itu
setipa transaksi memiliki gambaran jelas dari skema replikasi sebelum hal tersebutmulai, dan skema replikasi ini tidak dapat diubah oleh tansaksi lain pada saat
eksekusi berlangsung. Oleh karena itu, one-copy serializability sebelumnya dilakukan
dalam kasus replikasi statis.
3.2 Isu Performa Lainnya
Karena peran primary mungkin merubah dari satu site ke lainnya, site s
mungkin mengirim service request ke primary site sebelum s menerima perubahan
informasi primary site. Jika s menerima perubahan pesan primary site sebelum pesan
dieksekusi, kemudian s mengirim kembali request baru ke primary site baru. Jika off-
switched primary site s menerima request yang ditujukan ke primary site, kemudian s
tidak menghiarukan request tersebut.
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 8/12
Dalam algorima replikasi data kompetitif dinamis, write request mungkin
menyebabkan beberapa Exit dan Reset Action pada bebrapa site dalam sebagai bagian
transaksi. Jika Switch tampil sebagai hasil write ini, lalu untuk alasan performa,
semua aksi ini harus selesai sebelum penggantian ( switch). Lainnya, status data site
mungkin ditranmisikan dua kali dari off-switched primary site ke primary site baru.
Ketika primary site p menginisialisasi Join Action untuk non data site, p
mengirim pesan join ke j. Indikasi ini adalah dimanipulasi pada copy objek dikirim ke
j.
Ketika hasil write dalam Exit Action dari data site i, i akan mengirim pesan
exit ke p. indikasi ini dimanipulasi juga, kali ini dalam pernyataan write ke p.
3.3 Kesalahan dan Recovery
Kesalahan non data site tidak berakibatkan pada eksekusi read dan write
request pada site lainnya. Primary site mungkin tidak tahu bahwa ada kesalahan pada
site.
Jika non primary data site i salah, semua x-lock request oleh primary site p
tidak akan akan diakui. Jika p tidak menerima respon dari data site i ke x-lock request , lalu p mengasumsikan bahwa i telah salah. Kemudian p merubah status i ke
0, dan berlanjut.
Jika primary site salah, setiap read request yang diajukan non data site tidak
dapat dilakukan ( s-lock request tidak diakui), dan write request yang diajukan semua
site tidak diakui. Jika sebuah site tidak diakui oleh p, maka site tersebut
mengasumsikan p telah salah,. Semua site, kecuali primary site, akan mengeksekusi
protokol untuk memilih beberapa data site menjadi primary site baru.
Sejak sejumlah copy dari objek berubah sejalan waktu, replikasi dinamis dan
algorima pengalokasian menjadi mudah diserang kesalahan yang mengaburkan akses
terhadap objek. Untuk mengatasi masalah ini, user tidak mungkin membebankan
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 9/12
memaksakan kenyataan dari masalah beberapa copy tidak dapat dikurangi. Jika
sejumlah pemaksaan dilakukan, maka primary site p menolak untuk memerima
keluarnya data site, dan akan mengurangi skema replikasi. Dalam kata lain, p
memberi tahukan site s bahwa exit request dari skema replikasi ditolak, berikutnya,
write terus dilakukan ke s, s lanjut melakukan request walaupun exit dilakukan juga.
Request mungkin dilakukan setelahnya, jika skema replikasi diperluas dalam
sejalannya waktu.
Ketika site s pulih dari kesalahan, prosedur recovery akan mengirim pesan
recovery ke setiap site dalam jaringan. Hanya primary site yang merespon pesan ini.
Site lain akan mengacuhkan pesan ini. Saat menerima pesan ini, p mengasumsikan s
adalah non data site, merubah statusnya menjadi 0, dan menginisialisasikan kedua
counter nya.
4 Analisa Algorima Replikasi Data Kompetitif Dinamis
4.1 Jadwal Request
Sejumlah urutan read-write request dari objek, ψ = o1o2o3…on , disebut jadwal. Berarti pembacaan kesimpulan dari ψ antara write ke i nya dan write ke (1+i)
oleh R(i), dan pembacaan kesimpulan sebelum write pertama oleh R(o). Untuk tepatnya,
penjadwalan
ψ = R(o)ω1 R(1)ω2… ωn R(n)
dimana ωi adalah single write request , R(i) adalah nol atau lebih read request .
Sesunguhnya, read request pada R(i)
mungkin dipesan sebagian. Walaupun
nyatanya read request pada R(i) terjadi berurutan.
4.2 Fungsi Biaya
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 10/12
Biaya komunikasi pemindahan objek antara dua site adalah 1. Oleh Karena itu
skema repliksi berisi site {1,2,3}, dan site 4 membaca objek, kemudian biaya
komunikasi adalah 1. Jika site 4 menulis objek, maka biaya komunikasi adalah 3.
Untuk semua jadwal ψ = o1o2o3…on , didefinisikan konfigurasi jadwal
menjadi urutan skema request
X 0o1 X 1o2…..on X n
Di mana X i, adalah skema replikasi setelah request ke i, dan X o adalah skema replikasi
sebelum request pertama dari jadwal.
Sebuah algoritma replikasi offline adalah yang mengetahui semua jadwal
request , dan mempetakan jadwal menjadi jadwal terkonfigurasi sebelum eksekusi.
Algoritma tersebut dapat mengkonfigurasi jadwal optimal untuk fungsi biaya
berbeda.
Sebuah algoritma replikasi online tidak mengetahui semua jadwal request ,
algorima tersebut mengubah skema replikasi berdasarkan pada permintaan awal. Saat
menerima request oi, sebuah algoritma replikasi online mengkonfigurasi skema
replikasi X i selanjutnya berdasarkan pada memprediksi jadwal dan request oi. dalamkata lain, algoritma tersebut mengkonfigurasi skema replikasi secepatnya setelah
request dilakukan. Untuk read request , biaya komunikasi yang paling efisien untuk
mereplikasi copy up_to-date dalam X i-1 sampai X i, dan untuk melayani request . Untuk
write request , biaya komunikasi menjadi biaya untuk mengrelokasi secara up_to-
date sampai X i. Untuk jadwal ψ = o1o2o3…on , biaya algoritma tersebut, ditunjukkan
COST A(ψ) dijumlahkan semua biaya komunikasi setiap request .
4.3 Perbandingan
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 11/12
Perbandingan adalah cara untuk mengukur performa sebuah algoritma online.
Sebuah algoritma replikasi kompetitif dinamis online adalah algoritma yang biaya
waktu c yang besarnya sama dengan algorimtma replikasi dinamis lainnya untuk
semua penjadwalan. Biasanya, sebuah algoritma replikasi kompetitif dinamis c, P
adalah salah satu dari dua konnstanta c dan d , untuk semua urutan request ψ ,
COST P (ψ) ≤ c.COST A(ψ)+d , di mana A bisa saja algoritma online atau offline.
4.4 Pemaksaan Request
Pemaksaan NBW ( No Blind Write) diperbolehkan, contonya sebuah transaksi
terdapat satu write dari sebuah objek, dan setiap write harus mempunyai setidaknya
satu referensi read contohnya sebuah read untuk objek yang sama yang tampilsebelum write. Pemaksaan ini praktis bertanggung jawab sejak tidak biasamerubah
nilai objek tanpa read objek sebelumnya.
Pemaksaan NBW dikombinasikan dengan mekanisme control persetujuan
yang menggaransi one-copy serializability ([6] dan [7]). Dalam jadwal, untuk setiap
objek O, diantara semua dua write O setidaknya terdapat satu read O. Alasannya
adalah setiap write (dari transaksi T1) tampil diantara write (dari transaksi T2) dan
satu referensi readnya (dari transaksi T2) akan violate serializability.
5 Kesimpulan
Algoritma replikasi data kompetitif dinamis mengadaptasikan skema replkasi
untuk merubah pola read-write. Sebagai contoh, untuk beberapa periode waktu, akses
sebuah objek o dalam sistem terdistribusi mengandung read dan write dari site s, lalu
algoritma tersebut akan memindahkan skema replikasi o termasuk hanya s. Kontras,
jika untuk beberapa periode waktu, semua site dalam sistem terdistribusi melakukan
hanya read dari o, lalu algoritma tersebut akan memindahkan skema replikasi o
termasuk semua site dalam sistem terdistribusi. Penting untuk dicatat bahwa
5/7/2018 Algotitma Replikasi Data Kompetitif Dinamis - slidepdf.com
http://slidepdf.com/reader/full/algotitma-replikasi-data-kompetitif-dinamis 12/12
perubahan ini tampil dalam model terdistribusi, sebagai hasil statistik local pada
setiap site.
Algoritma replikasi data kompetitif dinamis didasarkan dua teknik. Salah
satunya keberadaan primary site, dan yan kedua adalah metode variable read atau
write.
Algoritma replikasi data kompetitif dinamis dilakukan untuk setiap objek
logikal tersendiri adri semua objek logikal. Dengan kata lain, objek yan berbeda
mungkin memiliki skema replikasi yang berbeda dan primary site berbeda.
Algoritma replikasi data kompetitif dinamis ini tidak berisi biaya I/O replikasi
data ke dalam jumlah. Algoritma ini mengoptimalkan fungsi biaya yang
dikombinasikan antara biaya I/O dan biaya komunikasi.