Anda di halaman 1dari 8

PBD MODUL 13

Perancangan Distributed DBMS

Distributed Relational Database Design Tiga hal utama dalam desain database terdistribusi : Pembagian (Fragmentation) Relasi dapat dibagi menjadi beberapa bagian relasi , yang kemudian didistribusikan. Ada 2 jenis fragmentasi : Horizontal dan Vertical. Alokasi (Allocation) Setiap fragment disimpan pada tempat (site) dengan distribusi yang optimal. Perbanyakan (Replikasi) Salinan dari fragmen yang terdapat/dipelihara pada beberapa tempat/site. Fragmentation Definisi dan alokasi dari fragmen dilaksanakan secara strategis untuk mencapai tujuan :
Locality of reference, jika memungkinkan sebaiknya data disimpan dekat

dengan tempat penggunaannya.


Improved reliability and availability, keandalan dan ketersediaan data dapat

ditingkatkan dengan replikasi.


Acceptable performance, alokasi data yang buruk dapat menyebabkan

kejadian bottleneck sehingga menyebabkan suatu site menjadi terbanjiri request/permintaan dari site lain, sehingga menyebabkan penurunan performa yang cukup signifikan.
Balanced storage capacities and cost, pertimbangan terhadap ketersedian

tempat penyimpanan dan biaya penyimpanan pada setiap site.


Minimal communication cost, pertimbangan terhadap biaya request jarak jauh

(remote request). Definisi dan alokasi fragmen harus berdasarkan kepada bagaimana database tersebut akan digunakan. Desain berdasarkan pada informasi kuantitatif atau kualitatif. Informasi kuantitatif digunakan dalam pengalokasian, dapat berisi : Frekuensi dimana suatu aplikasi dijalankan. Tempat/site dimana suatu aplikasi dijalankan.

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Kriteria atau syarat syarat performa untuk transaksi transaksi. Informasi kualitatif digunakan dalam fragmentasi, dapat berisi informasi mengenai transaksi transaksi yang dieksekusi atau dijalankan seperti : Relasi, atribut dan tuple yang diakses. Tipe pengaksesan ( baca atau tulis ). Predikat dari operasi operasi baca. Terdapat 4 alasan mengapa dilakukan fragmentasi : Usage Pada umumnya, aplikasi bekerja menggunakan view daripada keseluruhan relasi. Oleh karena itu untuk data terdistribusi lebih tepat bekerja dengan himpunan bagian dari relasi sebagai unit dari distribusi Efficiency Data disimpan lebih dekat dengan bagian yang lebih sering menggunakannya Parallelism Dengan fragmen sebagai unit distribusi, transaksi dapat dibagi menjadi beberapa subquery yang beroperasi pada fragmen. Sehingga dapat meningkatkan konkurensi atau parallelism dalam sistem Security Data yang tidak dibutuhkan oleh aplikasi lokal tidak disimpan dan tidak tersedia untuk user yang tidak berwenang

Ketepatan dalam fragmentasi teratasi dengan 3 aturan berikut : Completeness Jika relasi R didekomposisikan menjadi R1, R2,, Rn. maka setiap data item yang ditemukan dalam R harus ada dalam sedikitnya 1 fragmen. Aturan ini untuk memastikan bahwa tidak ada data yang hilang selama fragmentasi. Reconstruction Harus memungkinkan mendefinisikan operasi relasional yang akan merekonstruksi relasi R dari fragmen-fragmen. Aturan ini memastikan terdapatnya ketergantungan fungsional. Disjointness

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Jika data item di muncul dalam fragmen Ri maka tidak boleh muncul pada fragmen lainnya. Fragmentasi vertikal merupakan pengecualian, dimana atribut primary key harus diulang untuk memungkinkan rekonstruksi. Aturan ini memastikan kerangkapan data menjasi minimal.

Macam-macam Fragmentasi :

Horizontal fragment, terdiri dari himpunan bagian dari tuple-tuple dalam Vertical fragment, terdiri dari himpunan bagian dari atribut-atribut dalam Mixed fragment, terdiri dari fragmen horizontal yang kemudian difragmen Derived horizontal fragment, merupakan fragmen horizontal yang

relasi relasi vertikal atau kebalikannya dihasilkan dari fragmen horizontal relasi parent. Alokasi Data Empat strategi alternatif mengenai alokasi data yaitu: Centralized (Terpusat) Terdiri dari database tunggal dan penyimpanan DBMS di satu tempat dengan user (pengguna) terbagi bagi melalui jaringan. Partitioned (Partisi) Database dipartisi menjadi fragmen yang terpisah pisah, tiap fragmen ditempatkan ke dalam satu tempat/site. Complete Replication (Replikasi lengkap) Terdiri dari pemeliharaan secara lengkap replikasi dari database pada setiap tempat. Selective Replication (Replikasi selektif) Kombinasi dari partitioning, replication, dan centralization. Transparansi dalam DDBMS Diidentifikasikan 4 jenis transparansi dalam DDBMS, yaitu :

Transparansi distribusi (Distribution Tansparency)

Memungkinkan user untuk menganggap database sebagai entitas logical tunggal. Ada 5 tingkatan transparansi, yaitu : o Fragmentation Transparency

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Merupakan tingkatan tertinggi

dalam transparansi distribusi, jika

tarnsparansi fragmentasi disediakan oleh DDBMS maka user tidak perlu tahu bahwa data difragmentasi. Sebagai hasilnya akses database berdasarkan pada skema global. o Location Transparency Merupakan tingkatan menengah dari transparansi distribusi. Dengan transparansi ini user harus mengetahui bahwa data telah difragmentasi tetapi tidak perlu mengetahui ditempatkan dimana data tersebut. o Replication Transparency Terkait erat dengan transparansi lokasi, dimana user tidak mengetahui replikasi dari fragmen. o Local Mapping Transparency Merupakan tingkatan terendah dari transparansi distribusi. Dengan transparansi pemetaan lokal, user perlu untuk mespesifikasikan nama fragmen dan lokasi data item, dengan pertimbangan terdapat replikasi. o Naming Transparency Sebagai akibat dari transparansi distribusi diatas. Seperti dalam database terpusat, setiap data item dalam database terdistribusi harus mempunyai nama yang unik. Karena itu DDBMS harus memastikan tidak ada 2 site yang membuat objek database dengan nama yang sama. Salah satu solusi untuk masalah ini dengan membuat pusat Name server, yang bertanggung jawab untuk memastikan keunikan setiap nama dalam sistem.

Transparansi transaksi (Transaction Transparency)

Memastikan bahwa seluruh transaksi terdistribusi memelihara integritas dan konsistensi dari database. Transaksi terdistribusi mengakses data yang disimpan pada lebih dari 1 lokasi. Setiap transaksi dibagi menjadi subtransaksi, satu untuk setiap site yang harus diakses. Terdapat 2 aspek yang harus dipertimbangkan dalam transparansi transaksi : concurency transparency dan failure transparency.
o

Concurency Transparency, disediakan oleh DDBMS jika hasil dari

seluruh transaksi yang konkuren ( terdistribusi ataupun tidak ) dieksekusi secara independen dan secara logika konsisten dengan hasil yang didapatkan jika transaksi dieksekusi pada waktu yang bersamaan.

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Failure

Transparency,

selain

dapat

memenuhi

mekanisme

recovery dan mengatasi failure seperti pada DBMS terpusat, DDBMS juga harus dapat mengatasi : hilangnya pesan, kegagalan jalur komunikasi, kegagalan site, dan partisi jaringan. DDBMS harus memastikan keutuhan (atomicity) dari transaksi global, dimana memastikan bahwa subtransaksi dari global transaksi seluruhnya COMMIT atau ABORT. Terdapat 4 macam transaksi dengan tingkat kerumitan dalam interaksi dengan DBMS, yaitu :
o

remote request, Sebuah aplikasi pada satu site dapat mengirimkan

request (perintah SQL) ke beberapa remote site untuk eksekusi. Request tersebut dieksekusi seluruhnya di remote site dan hanya dapat mengacu pada data yang terdapat pada site tersebut.
o

Remote unit of work, sebuah aplikasi pada site lokal dapat

mengirimkan seluruh perintah SQL dalam transaksi ke beberapa remote site untuk eksekusi. Seluruh perintah SQL dieksekusi seluruhnya di remote site dan hanya dapat mengacu pada data yang ada pada site tersebut. Site lokal dapat menetapkan apakah transaksi tersebut COMMITED atau ROLLED BACK.
o

Distributed unit of work, sebuah aplikasi pada site lokal dapat

mengirimkan sebagian atau seluruh perintah SQL dalam transaksi ke satu atau beberapa remote site untuk eksekusi. Setiap perintah SQL dieksekusi seluruhnya pada remote site dan hanya dapat mengacu pada data yang ada pada site tersebut. Perintah SQL lainnya dapat dieksekusi pada site yang lain. Site lokal dapat me netapkan apakah transaksi tersebut COMMITED atau ROLLED BACK.
o

Distributed request, sebuah aplikasi pada site lokal dapat

mengirimkan sebagian atau seluruh perintah SQL dalam transaksi ke satu atau beberapa remote site untuk eksekusi. Perintah SQL dapat meminta akses data pada satu atau lebih site.

Transparansi performa (Performance Transparency)

Transparansi performa meminta DDBMS untuk bekerja seperti DBMS terpusat. Terdapat Distributed Query Processing (DQP) yang memetakan

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

permintaan data kedalam perintah operasi terurut pada database lokal. DQP harus memutuskan : o o o DQP Fragmen mana yang harus diakses Salinan fragmen yang mana yang harus digunakan, jika fragmen Lokasi mana yang digunakan menghasilkan strategi eksekusi yang dioptimalkan dengan

telah diperbanyak

pertimbangan fungsi biaya. Biaya yang biasanya terkait dengan distributed request diantaranya : o disk o o

Biaya waktu akses (I/O) termasuk pengaksesan data fisik pada Adanya biaya waktu CPU ketika menjalankan operasi terhadap Biaya komunikasi terkait dengan perpindahan data melalui jaringan

data dalam main memory

Transparansi DBMS (DBMS Transparency)

Transparansi DBMS menyembunyikan pengetahuan bahwa DBMS lokal mungkin dapt berbeda dan karena itu hanya diaplikasikan untuk DDBMS yang heterogen. Merupakan Transparansi yang paling rumit untuk penyediaan sebagai generalisasi. Perbandingan Strategis untuk Distribusi Data

Aturan aturan untuk DDBMS ada 12 yaitu : Prinsip dasar :

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Terhadap pengguna, sistem terdistribusi harus kelihatan seperti bukan sistem terdistribusi. 1. Autonomy Lokal, maksudnya : 2. Data lokal dimiliki dan diatur secara lokal. Operasi lokal berlangsung di lokal. Semua operasi yang berlangsung di suatu site dikontrol oleh site tersebut.

Tidak ada ketergantungan pada site pusat. Tidak ada sistem yang tidak dapat beroperasi di suatu site. Artinya tidak ada jaringan yang terpusat.

3.

Operasi yang terus berlanjut. Tidak perlu ada rencana untuk membuat sistem dimatikan, untuk operasi seperti : Menambah atau menghapus site dari sistem. Membuat dan menghapus fragmen pada satu atau lebih site.

4. 5. 6.

Location Independence. Pengguna harus dapat mengakses data dari berbagai tempat. Fragment Independence. User harus dapat mengakses data pada berbagai fragmen. Replication Independence. Pengguna tidak boleh mengetahui bahwa data telah direplikasi. Walaupun, pengguna tidak dapat mengakses copy dari data tersebut secara langsung, tidak juga dapat mengupdate semua copy dari jenis jenis data tersebut.

7.

Distributed Query Processing. Sistem harus dapat mampu mengolah query query yang menghubungkan data pada lebih dari satu tempat.

8.

Distributed Transaction Processing. Sistem harus dapat mendukung transaksi sebagai unit dari recovery. Sistem harus dapat menyakinkan bahwa kedua local dan global transaksi mengacu ke aturan ACID untuk transaksi secara atomik, konsisten, lokasi dan durasi.

9.

Hardware Independence. DDBMS harus dapat dijalankan pada berbagai platform hardware.

10. Operating System Independence. DDBMS harus dapat dijalankan pada berbagai sistem operasi. 11. Network Independence.

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

DDBMS harus dapat dijalankan pada berbagai hubungan jaringan yang berbeda. 12. Database Independence. DDBMS harus dapat dimungkinkan dibangun dari DBMSs lokal, mendukung data model yang berbeda. Dengan kata lain, sistem harus dapat mendukung keaneka ragaman.

Catatan : Empat aturan yang terakhir di atas adalah yang paling ideal atau paling bagus diterapkan untuk suatu DDBMS.

Pusat Pengembangan Bahan Ajar - UMB

DEVI FITRIANAH, S.Kom, MTI PERANCANGAN BASIS DATA

Anda mungkin juga menyukai