Skema
dan Proses Time and Coordination
1.
Apa yang kalian ketahui mengenai proses time dan coordination pada sistem
terdistribusi, sebutkan contoh dari alur tersebut ?
2.
Bagaimana proses pendistribusian data dan transaksi serta implementasinya dalam
sistem database ?
JAWABAN!!!
PROSES TIME AND
COORDINATION
1.
a. Pengetahuan Logical Clock & Synchronisation
Logical Clock
Logical clock adalah software counter
yang bertambah secara monoton dimana nilainya tidak perlu menanggung hubungan
tertentu ke suatu physical clock.
Hampir seluruh komputer memiliki
sebuah circuit untuk menunjukkan waktu. Pada
kenyataannya circuit tersebut bukanlah penunjuk waktu (jam)
yang sebenarnya. Kata yang tepat untuk mendeskripsikan circuit tersebut
adalah timer. Timer pada suatu komputer pada umumnya merupakan
suatu crystal quartz yang termekanisasi. Jika dihadapkan pada suatu tekanan,
kristal tersebut akan berosilasi pada frekuensi tertentu bergantung pada jenis
kristal dan bagaimana kristal tersebut dipotong serta seberapa besar tekanan
yang diberikan. Terdapat 2 register yang berasosiasi dengan kristal tersebut.
Sebuah counter dan holding register. Setiap interript akan diregenerasi dan
counter akan kembali terisi oleh nilai yang terdapat pada holding register.
Dengan begini sangat memungkinkan untuk memrogram sebuah timer untuk
meregenerasi 60 interrupt tiap detiknya atau sesuai dengan frekuensi yang
diinginkan. Setiap interrupt disebut dengan satu clock tick.
Synchronisation
Sinkronisasi adalah proses pengaturan jalannya
beberapa proses pada saat yang bersamaan. Secara garis besar mungkin
sinkronisasi adalah menyamakan sesuatu secara bersamaan. Sinkronisasi
adalah suatu proses pengendalian akses dari sumber daya terbagi pakai (shared
resource) oleh banyak thread sedemikian sehingga hanya satu thread yang dapat
mengakses sumber daya tertentu pada satu waktu.
b. Proses Koordinasi pada sistem Terdistribusi
Sistem tedistribusi memungkinkan kita untuk saling mengkoordinasikan dan
saling bekerja sama dalam melakukan aktifitas secara lebih efisien dan lebih
efektif. Tujuan utama dari system terdistribusi dapat direpresentasikan
dengan : resource sharing , openness, concurrency, scalability, fault-tolerance dan transparency.
Proses koordinasi nya
· Dijalankan secara bersamaan (execute concurrently)
· interaksi untuk bekerjasama dalam mencapai tujuan yang sama
· mengkoordinasikan aktifitas dan pertukaran informasi yaitu pesan
yang dikirim melalui jaringan komunikasi
Jika kita melihat sistem terdistribusi
sebagaikoleksi (mungkin proses multithreaded, maka bagian komputasi dari sistem
terdistribusi dibentuk oleh proses, masing-masing terkait dengan aktivitas
komputasi spesifik, yang pada prinsipnya, dilakukan secara independen dari
kegiatan lainnya proses. Dalam model ini, bagian koordinasi sistem
terdistribusi menangani komunikasi kerjasama antara proses. Membentuk perekat
yang mengikat kegiatan yang dilakukan oleh proses menjadi keseluruhan.
c. Perbedaan Model Sinkronisasi dan Asinkronisasi
Sistem basis data terdistribusi dapat menyimpan
duplikat dari data yang sama dalam site yang berbeda agar perolehan informasi
yang semakin cepat dan toleransi kesalahan. Proses ini disebut replikasi.
Replikasi pada relasi bersifat redundan pada dua atau lebih situs. Replikasi
pada relasi disebut replikasi penuh bila relasi tersebut disimpan pada semua
situs. Basis data disebut redundan penuh jika tiap-tiap site mengandung
duplikat dari keseluruhan basis data.
Replikasi dilakukan karena memiliki kelebihan
sebagai berikut:
·
jika situs asli yang menyimpan relasi R
mengalami kegagalan, relasi R tetap dapat diakses melalui
replikanya
·
query pada relasi R
dapat berjalan secara paralel di simpul (situs) yang berbeda
·
lebih sedikit transfer data, yaitu tidak
perlu lagi mengambil data suatu relasi melalui jaringan karena sudah ada
replika dalam situs lokal.
Sementara itu, dalam melakukan replikasi, ada dua
strategi, yaitu
·
sinkron yaitu: sebelum seluruh
proses transaksi update dinyatakan selesai, data yang telah
dimodifikasi disinkronkan ke setiap duplikatnya; proses ini harus
menunggu hingga data di tempat penyimpanan duplikat selesai ditulis sebelum
dilakukan perubahan lainnya sehingga menjadi lebih kompleks
·
asinkron yaitu: copy data
diperbaharui secara periodik berdasarkan data utama yang diperbaharui; proses
penulisan data selesai tanpa perlu menunggupenulisan data di tempat
penyimpanan duplikat selesai; proses ini memang meningkatkan kinerja sistem
namun risikonya, inkonsistensi data bisa terjadi.
SHARE DATA
2.
a. Konsep dan operasi Shared Data antara server dan client
Dalam sistem terdistribusi, beberapa komputer yang
berbeda saling terhubung satu sama lain melalui jaringan sehingga komputer yang
satu dapat mengakses dan menggunakan sumber daya yang terdapat dalam situs
lain. Misalnya, user di komputer A dapat menggunakan laser
printer yang dimiliki komputer B dan sebaliknya user di
situs B dapat mengakses file yang terdapat di komputer A.
Konsep Sharing Client – Server
Jaringan client atau server adalah jaringan
dimana komputer client
bertugas melakukan permintaan data dan server bertugas
melayani permintaan tersebut.
Client
Ø User akan membuat
permintaan melalui software client. Aplikasi ini berfungsi :
Ø Memberikan interface
bagi user untuk melakukan jobs.
Ø Format request data ke
bentuk yang dapat dimengerti oleh server
Ø Menampilkan hasil yang
diminta pada layar
Server
Jaringan client atau server, server khusus digunakan untuk pemrosesan,
penyimpanan dan manajemen data. Server bertugas menerima request dari client,
mengolahnya, dan mengirimkan kembali hasilnya ke client.
Untuk itu, server membutuhkan komputer khusus dengan spesifikasi hardware
yang jauh lebih baik dan bertenaga dibandingkan hardware untuk client karena
komputer harus mampu melayani :
Ø Request secara
simultan dalam jumlah besar
Ø Aktivitas manajemen
jaringan
Ø Menjamin keamanan pada
resource jaringan
b. Proses Layanan pada Saat Terjadi Crash
atau Fault Tolerance & Data Transaction dan Urutan Operasi yang Dijalani
Oleh Server
Sebuah kecelakaan (atau sistem crash) dalam
komputasi adalah suatu kondisi di mana sebuah komputer atau program, baik
aplikasi atau bagian dari sistem operasi, berhenti berfungsi dengan baik,
sering keluar setelah menghadapi kesalahan. Seringkali program menyinggung
mungkin muncul untuk membekukan atau hang sampai layanan pelaporan kecelakaan
dokumen rincian kecelakaan itu. Jika program adalah bagian penting dari kernel
sistem operasi, seluruh komputer dapat kecelakaan. Hal ini berbeda dari hang
atau membekukan dimana aplikasi atau OS terus berjalan tanpa respon jelas untuk
masukan.
Banyak crash adalah hasil dari eksekusi
instruksi mesin tunggal, tetapi penyebab ini berlipat ganda. Penyebab khas
adalah ketika program counter diatur ke alamat yang salah atau buffer overflow
menimpa sebagian kode program karena bug sebelumnya. Dalam kedua kasus, itu
cukup umum untuk prosesor untuk mencoba untuk mengeksekusi data atau nilai
memori acak. Karena semua nilai data adalah mungkin tetapi hanya beberapa nilai
instruksi valid, ini sering mengakibatkan pengecualian instruksi ilegal.
C. Konsep Dasar Replication
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data
dan objek-objek database dari satu database ke database lain dan melaksanakan
sinkronisasi antara database sehingga konsistensi data dapat terjamin. Dengan
menggunakan teknik replikasi ini, data dapat didistribusikan ke lokasi yang
berbeda melalui koneksi jaringan lokal maupun internet. Replikasi juga
memungkinkan untuk mendukung kinerja aplikasi, penyebaran data fisik sesuai
dengan penggunaannya, seperti pemrosesan transaksi online dan DSS (Desiscion
Support System) atau pemrosessan database terdistribusi melalui beberapa
server.
Replikasi adalah proses menyalin dan memelihara objek database dalam beberapa database yang membentuk suatu sistem database terdistribusi. Replikasi dapat meningkatkan kinerja dan melindungi ketersediaan aplikasi karena data pilihan alternatif akses ada. Sebagai contoh, sebuah aplikasi biasanya dapat mengakses database lokal daripada server jauh untuk meminimalkan lalu lintas jaringan dan mencapai kinerja maksimum. Selanjutnya, aplikasi dapat terus berfungsi jika server lokal mengalami kegagalan, tetapi server lain dengan data direplikasi tetap dapat diakses.
Replikasi adalah proses menyalin dan memelihara objek database dalam beberapa database yang membentuk suatu sistem database terdistribusi. Replikasi dapat meningkatkan kinerja dan melindungi ketersediaan aplikasi karena data pilihan alternatif akses ada. Sebagai contoh, sebuah aplikasi biasanya dapat mengakses database lokal daripada server jauh untuk meminimalkan lalu lintas jaringan dan mencapai kinerja maksimum. Selanjutnya, aplikasi dapat terus berfungsi jika server lokal mengalami kegagalan, tetapi server lain dengan data direplikasi tetap dapat diakses.