Transparansi Distribusi Database Management System

Transparansi Distribusi Database Management System
Transparansi Distribusi Database Management System

Distribusi transparansi memperbolehkan pengguna untuk mengetahui bahwa basis data sebagi sebuah single logikal entitas. Jika suatu DDBMS memperlihatkan transparansi terdistribusinya, pengguna tidak perlu tahu mengenai fragmentasi dari datanya ataupun locasi dimana data tersebut di simpan.

Ada suatu transparansi yang memperbolehkan pengguna untuk mengetahui apakah data telah terfragmen dan di simpan suatu di lokasi, nama dari transparansi ini yaitu: Pemetaan Transparansi Lokasi  (Transparancy Local Mapping).

Contoh:
  • S1 =  ∏ staffno, position,sex,DOB,salary  (STAFF) ditempatkan di site 3
  • S2 =  ∏ staffno, fname,lname,branchno,sex,DOB,salary  (STAFF)
  • S21 =  σ Bno = B3 (S2) ditempatkan di site 3
  • S22 =  σ Bno = B5 (S) ditempatkan di site 5
  • S23 =  σ Bno = B7 (S) ditempatkan di site 7

Transparansi Fragmentasi
Fragmentasi adalah tingkat tertinggi dari distribusi transparansi yang di sediakan oleh DDBMS, sehingga pengguna tidak perlu tahu mengenai data yang di fragmentasikan. Akses basis data berdasarkan pada skema globalnya, sehingga pengguna tidak perlu menspesifik nama fragmen atau lokasi datanya.

Contoh:
Select fname, lname From Staff
Where position = 'Manager';

Ini adalah statement SQL yang harus di tulis pada sistem tersentralisasi.

Transparansi Lokasi
Transparansi lokasi dalam distribusi transparansi berada pada tingkat menengah. Dengan transparansi ini, user mengetahui data tersbut di fragmentasi tidak perlu mengetahui dimana lokasi dari data tersebut.

Contoh:
SELECT fname, lname FROM S21
WHERE Staffno IN (SELECT Staffno FROM S1 WHERE Position='Manager')
UNION
SELECT fname, lname FROM S22
WHERE Staffno IN (SELECT Staffno FROM S1 WHERE Position='Manager')
UNION
SELECT fname, lname FROM S23
WHERE Staffno IN (SELECT Staffno FROM S1 WHERE Position='Manager');

Sekarang di perlukan nama dari fragmen dalam query. Digunakan juga join (subquery) di karenakan posisi dan fname ataupun lname muncul di beberapa vertikal fragmentasi yang berbeda. Keuntungan utama dari lokasi transparansi adalah basis data dapat secara fisik teroragnisasi tanpa harus mempengaruhi aplikasi yang mengakses basis data tersebut.

Transparansi Replikasi
Sama dengan lokasi transparansi adalah transparansi untuk menggandakan suatu data, maksudnya pengguna tidak mengetahui data telah di fragmentasi . Transparansi ini merupakan akibat dari adanya transparansi lokasi. Bagaimanapun ada kemungkinan untuk tidak memiliki transparansi lokasi tetapi mempunyai replikasi transparansi.

Transparansi Pemetaan Lokal
Ini adalah tingkatan paling rendah pada distribusi transparansi. Dengan transparansi ini, pengguna perlu menspesifikasikan nama fragmen dan lokasi dari data items.

Contoh:
SELECT fname,lname FROM S21 AT SITE 3 
WHERE Staffno IN (SELECT Staffno FROM S1 AT SITE 5 WHERE Position='Manager')
UNION
SELECT fname,lname FROM S22 AT SITE 5
WHERE Staffno IN (SELECT Staffno FROM S1 AT SITE 5 WHERE Position='Manager')
UNION
SELECT fname,lname FROM S23 AT SITE 7
WHERE Staffno IN (SELECT Staffno FROM S1 AT SITE 5 WHERE Position='Manager');

Pemberian Nama Transparansi
Setiap item pada basis data yangtelah didistribusikan memiliki nama yang unik. Oleh karena DDBMS memastikan tidak ada dua site yang membuat obyek basis data dengan nama yang sama. Satu solusi dari masalah iniadalah dengan membuat server nama terpusat, dimana alat bantu ini berisi semua nama dari sistem sehingga jika ada yang sama akan dapat terdeteksi.

Namun masalah ini memiliki kendala yaitu:
  • Kurangnya kemampuan lokal otonomi
  • Masalah kinerja, jika terpusat maka akan terjadi bottleneck
  • Rendahnya ketersediaan, jika site pusat gagal , site yang lain tidak dapat membuat obyek basis databyang lain.

Ada solusi alternatif  yaitu dengan di gunakannya ‘awalan’ suatu obyek sebagai identifier lokasi yang menciptakan obyek tersebut. Sebagai contoh relasi Branch di buat pada site S1 sehingga obyek tersebut dapat dinamakan S1.Branch. 
Namun jika ingin mengidentifikasi setiap fragment dan setiap salinan fragment tersebut maka dapat dibuat S1.Branch.F3.C2 Yang mana terdapat 2 salinan dari fragmen 3 pada relasi Branch yang dibuat pada site S1. Namun hal ini akan mengakibatkan kehilangan data pada transparansi terdistribusi.

Pendekatan yang lain dengan menggunakan alias ( sinonim ) untuk masing-masing obyek basis data. Seperti S1.Branch.F3.C2 diketahui sebagai Localbranch yang digunakan pengguna pada site S1. DDBMS memiliki tugas untuk memetakan alias mejadi obyek basis data yang sesuai.


Sistem R* yang terdistribusi membedakan antara obyek printname nya dengan system wide-name nya. Printname adalah nama yang pengguna gunakan yang mengacu pada suatu obyek. System wide-name adalah identifier internal yang unik untuk obyek yang dijamin takkan pernah di ganti. System wide-name terdiri dari 4 bagian yaitu:
  1. Creator ID - Lokasi identifier yuang unik untuk pengguna yang menciptakan obyek 
  2. Creator site ID - global identifier yang unik untuk site dimana obyek dibuat 
  3. Local name - nama yang tidak memnuhi persyaratan untuk obyek 
  4. Birth-site ID - identifier yang unik untuk site dimana obyek disimpan.

Sebagai contoh, system wide-name: Manager@London.localbranch@glasgow
Merepresentasikan sebuah obyek dengan local name localBranch, diciptakan oleh pengguna Manager di London dan disimpan di site di Glasgow.

Posting Komentar

Lebih baru Lebih lama

نموذج الاتصال