Tugas Denny Trias Weblog

Kerjakan dengan sungguh-sungguh, bagikan ilmu dengan ikhlas, nanti Allah akan menambahkan keberkahan

NAMA : Praditya Eka U NIM : E3110584 PRODI : MIF C

Nama : Praditya Eka Utama

Nim : E3110584

Prodi : MIF / C

1. Apakah keuntungan DBMS terdistribusi dibandingkan dengan DBMS tersentralisasi?

a. DBMS terdistribusi memliki jangkauan area data yang luas (berbeda tempat) karena 1 database yang diakai bersama.

b. Data disimpan pada beberapa lokasi dengan tujuan untuk membuat distribusi yang transparan.

c. DBMS terdistribusi ada banyak komputer yang disebut sites atau nodes. Dimana site- site saling terhubung oleh jaringan komunikasi untuk mengirim data dan perintah – perintah diantara site- site.

d. Manajemen terkendali dalam pemakaian. (akses terpusat memudahkan memanajemen kontrol).

e. Efisiensi biaya. (tidak perlu membangun server di tiap tempat karena sudah akses ke pusat, client-server)

f. Pada DBMS yang tersentralisasi kegagalan pada suatu site akan mematikan seluruh operasional DBMS. Namun pada DDBMS kegagalan pada salah satu site, atau kegagalan pada hubungan komunikasi dapat membuat beberapa site tidak dapat di akses, tetapi tidak membuat operasional DBMS tidak dapat dijalankan.

2. Gambarkan arsitektur Client-Server dan Collaboration-Server.

a.

QUERY

Client-server

 
  clip_image001[4]

b.

SERVER

Collaboration-Server

 
  clip_image002[4]

3. Pada arsitektur collaboration server, jika suatu transaksi dikirim ke DBMS, akan

digambarkan bagaimana aktivitas tempat yang berbeda dikoordinasi. Secara khusus, gambarkan aturan manager transaksi pada tempat berbeda, konsep atomic transaksi terdistribusi.

Ketika sebuah transaksi mulai dikerjakan, maka transaksi itu berada dalam status aktif.  Jika terjadi penghentian sebelum operasi berakhir, maka transaksi segera beralih ke status gagal/failed.  Namun, bila keseluruhan transaksi selesai dikerjakan, maka transaksi itu berada pada status berhasil sebagian/partially committed, dimana perubahan-perubahan data masih berada di dalam memori utama yang bersifat volatile/tidak permanen.  Transaksi dalam status ini masih mungkin untuk pindah ke status failed, karena ada pembatalan transaksi baik sengaja maupun tidak.  Jika tidak beralih ke status failed, maka nilai-nilai data yang ada di memori utama akan direkam ke dalam disk yang bersifat permanen.  Begitu proses perekaman selesai, maka transaksi beralih ke status committed.  Sementara itu, transaksi yang berada pada status failed, maka DBMS harus menjalan proses rollback.  Proses tersebut dapat berupa:

  • Mengulangi pelaksanaan transaksi / restart, yang dilakukan pada transaksi yang failed akbiat kemacetan perangkat keras ataupun perangkat lunak dan bukannya penghentian transaksi secara sengaja oleh user.
  • Mematikan transaksi / kill, yang dilakukan untuk transaksi yang dihentikan secara sengaja oleh user atau akibat adanya kesalahan lojik dalam penulisan aplikasi.
  • Begitu salah satu dari pilihan proses tersebut selesai dilakukan, maka transaksi berpindah ke status batal (aborted).  Status berhasil sempurna/committed maupun batal/aborted merupakan status terminasi, yaitu status akhir dalam pelaksanaan transaksi.

4. Definisikan fragmentasi dan repkasi dalam hal dimana data disimpan.

Fragmentasi merupakan proses membagi sebuah relasi secara horizontal dengan mengelompokkan baris-baris untuk membuat subset dari tuples. Fragmentasi dibagi menjadi 2, yaitu Fragmentasi Horizontal dan Fragmentasi Vertikal. Bila sebuah relasi difragmentasi, harus meliputi relasi asal dari fragmen :

o Fragmentasi horisontal : union dari fragmen horisontal harus sama dengan relasi asal. Fragmen biasanya dibutuhkan disjoint.

o Fragmentasi vertikal : koleksi fragmen vertikal seharusnya dekomposisi lossless-join.

Replikasi berarti bahwa kita menyimpan beberapa copy sebuah relasi atau fragmen relasi. Keseluruan relasi dapat direplikasi pada satu atau lebih tempat. Sebagai contoh, jika relasi R difragmentasi ke R1, R2 dan R3, kemungkinan terdapat hanya satu copy R1, dimana R2 adalah replikasi pada dua tempat lainnya dan R3 replikasi

pada semua tempat. Hal ini dapat diilustrasikan pada Gambar 3.

clip_image003[4]

R1 R3

Site A

clip_image004[4]

R1 R2

Site B

R2

5. Apakah perbedaan antara replikasi synchronous dan asynchronous?

a. replikasi synchronous : semua copy dari relasi yang dimodifikasi (fragmen) harus diubah sebelum modifikasi transaksi commit. Distribusi data dibuat transparan ke pemakai.

b. Replikasi asynchronous : Copy dari sebuah relasi yang dimodifikasi hanya diubah secara periodik, copy yang berbeda akan keluar dari sinkronisasi. User harus waspada pada distribusi data. Produk saat ini mengikuti pendekatan ini.

6. Definisikan distributed data independence.

Distributed data independence : Pada basis data terdistribusi, data disimpan pada beberapa lokasi dengan tujuan untuk membuat distribusi yang transparan, sehingga pemakai tidak perlu mengetahui lokasi data.

7. Bagaimana teknik voting dan read-one write-all diimplementasikan pada replikasi Synchronous.

a. Voting : transaksi harus menulis mayoritas copy untuk memodifikasi sebuah obyek, harus membaca cukup copy untuk meyakinkan bahwa terlihat setidaknya satu dari copy saat itu. Misalnya terdapat 10 copy, 7 penulisan untuk perubahan dan 4 copy untuk pembacaan. Setiap copy mempunyai nomor versi. Teknik ini biasanya tidak atraktif karena pembacaan adalah hal yang biasa.

b. Read-any Write-all: penulisan lebih lambah dan pembacaan lebih cepat daripada teknik Voting. Teknik ini banyak digunakan pada synchronous replication.

8. Berikan penjelasan bagaimana asynchronous replication diimplementasikan.

Khususnya, jelaskan maksud capture dan apply. Asynchronous replication mengijinkan memodifikasi transaksi commit sebelum semua copy diubah (dan pembaca tidak hanya melihat satu copy). Pemakai harus waspada copy yang keluar dari sinkronisasi untuk suatu periode waktu yang pendek.

a. Langkah Capture diimplementasikan dengan satu dari dua pendekatan, yaitu

Log-Based Capture dan Procedureal Capture.

Log-Based Capture : log (menyimpan recovery) digunakan untuk membangkitkan Change Data Table (CDT). Jika hal ini dikerjakan ketika log terakhir ditulis ke disk, harus menghapus perubaan ke subsequent yang dihentikan transaksi. Procedural Capture: suatu prosedur yang secara otomatis dibangkitkan (trigger) mengerjakan capture. Implementasi capture dengan Log-Based Capture lebih baik karena lebih murah dan lebih cepat tetapi harus memahami detail dari property log.

b. Proses Apply pada tempat sekunder secara periodic mengakibatkan perubahan

ke table CDT dari primary site, dan mengubah copy. Periode didefinisikan oleh timer atau pemakai/aplikasi. Replika dapat dipandang lebih dari relasi yang dimodifikasi.

Jika hal ini terjadi, replica terdiri dari pengubahan pandangan material yang naik

sebagai perubahan relasi. Log-Based Capter ditambah Apply yang terus-menerus akan meminimalkan delay pada propaganda perubahan. Procedureal Capture ditambah application-driven Apply merupakan cara yang fleksibel untuk perubahan proses.

9. Apakah perbedaan antara log-based dan procedureal untuk implementasi capture ?

a. Log-Based Capture : log (menyimpan recovery) digunakan untuk membangkitkan Change Data Table (CDT). Jika hal ini dikerjakan ketika log terakhir ditulis ke disk, harus menghapus perubaan ke subsequent yang dihentikan transaksi.

b. Procedural Capture: suatu prosedur yang secara otomatis dibangkitkan (trigger)

mengerjakan capture.

10. Mengapa pemberian nama unik pada obyek basis data lebih kompleks pada DBMS

terdistribusi

Karena terdapat adanya tahap fragmentasi dan replikasi. Dimana relasi difragmen dan replikasi, setiap partisi memerlukan nama global yang unik agar hasil copy-an dapat disimpan. Dalam DBMS seperti biasanya tidak terdapat tahap fragmentasi dan replikasi sehingga DBMS terdistribusi lebih kompleks.

Single Post Navigation

Tinggalkan komentar