SISTEM BASIS DATA TERSEBAR DESAIN BASIS DATA TERDISTRIBUSI YULI ASRININGTIAS,S.KOM., M.KOM.
3 Isu terkait penyimpanan relasi dalam distributed database Replikasi Menyediakan duplikasi relasi untuk pengaksesan data dan keamanan data. Setiap replika dapat disimpan pada situs yang berbeda Fragmentasi Melakukan partisi relasi menjadi beberapa fragmen. Masing-masing fragmen dapat disimpan di situs yg berbeda Replikasi dan Fragmentasi Kombinasi dari replikasi dan fragmentasi
OVERVIEW RELATIONAL DBMS Model Relational : Didasarkan pada prinsip matematis terutama teori himpunan Memiliki sifat dasar bahwa semua informasi ttg entity, atribute dan relationship diwujudkan dalam bentuk tabel yang disebut relasi.
OVERVIEW RELATIONAL DBMS Beberapa sifat relasi : Sebuah relasi hanya memiliki satu tipe yang ditunjukkan oleh skemanya Tiap relasi memiliki jumlah kolom yang tidak berubah dan memiliki nama yang unik Tidak ada duplikasi tuple Tiap elemen dalam relasi bersifat atomic, artinya tiap atribut hanya memiliki satu nilai yang tidak dapat dibagi lagi menjadi bagian yang lebih kecil. Baris dan kolom tidak memiliki urutan tertentu
MANIPULASI DATA PADA MODEL RELASIONAL Dilakukan melalui fasilitas pemrosesan himpunan yang diimplementasikan oleh operator-operator relational ( melakukan query terhadap basisdata) Pendekatan : - Aljabar Relasional - Kalkulus Relasional
ALJABAR RELASIONAL Object manipulasi Himpunan relasi Manipulator Operator relasional Contoh : R1 opr R2 R3 4 Operasi utama : - Seleksi atau Restriksi - Proyeksi - product Cartesian - Join
SELEKSI Operasi seleksi atas relasi R adalah sebuah pemilihan relasi S yang merupakan subset dari R dimana tuple-tuple S memenuhi kriteria seleksi tertentu Contoh : Select PNo, Name, Add From Employee Where Name=‘Citra’
PROYEKSI Proyeksi adalah pemilihan atribute-atribute tertentu dari sebuah relasi R untuk membentuk relasi baru S. Duplikasi tuple tidak akan muncul dalam S Contoh : Select PNo, Name, Add From Employee
PRODUCT CARTESIAN Product Cartesian dari relasi R dan S adalah relasi baru R dan S yang memiliki atribute dari R dan S, dan tuple dari relasi R x S adalah semua kemungkinan kombinasi tuple dari R dan S. Contoh : Select PNo, Name, Add, NSupp, Cost From Employee, Supplier
JOIN Join dari dua relasi R dan S adalah seleksi terhdp produk kartesian sehingga sebuah kondisi spesifik terpenuhi. Contoh : SELECT make,model,FirstName,LastName from cars right join employees on cars.carno=employees.carno;
DATA REPLIKASI Jika relasi R direplikasi, duplikasi dari R disimpan pada dua atau lebih situs. Pada kasus tertentu, duplikasi disimpan disetiap situs dalam sistem Keuntungan dan kerugian Avalibility Peningkatan Paralelisme Proses query terhdp relasi R dpt dilakukan scr paralel dibeberapa situs. Peningkatan Overhead pada updating Sistem hrs menjamin konsistensi data pada setiap replika. Replikasi akan meningkatkan performance pada operasi pembacaan dan meningkatkan availibility data untuk transaksi pembacaan. Transaksi Update akan meningkatkan overhead, disamping pengendalian update scr konkruen oleh beberapa transaksi terhdp replika lebih kompleks daripada basisdata terpusat.
DATA FRAGMENTASI Distribusi Data Table 4 Alasan mengapa perlu fragmentasi : Penggunaan. Dalam realitas, data yang sering digunakan bukanlah data dala seluruh table, tetapi hanya sebagian data saja View Efisiensi. Data disimpan dilokaso yang paling dekat dgn pengguna yang sering mengakses. Sehingga data yang tidak sering dibutuhkan oleh lokasi tertentu tdk akan disimpan dilokasi yg bersangkutan Paralel. Karena data yang didistribusikan berupa fragmen data, maka transaksi yg berupa query tunggal dpt dipecah menjadi subquery yg dikenakan terhdp fragmen data, sehingga transaksi dpt dilakukan secara bersamaan (concurrent) Keamanan. Data yang tdk dibutuhkan oleh aplikasi lokal tidak akan disimpan dalam lokasi tersebut, sehingga user yg tdk memiliki hak utk mengakses tdk akan bisa mengakses data yg lain.
Beberapa kelemahan Fragmen Menurunnya unjuk kerja. View yang melibatkan lebih dari satu fragmen data pada lokasi yang berbeda akan mengalami penurunan unjuk kerja. Integritas. Pengendalian integritas lebih sulit jika atribut yang berperan dalam dependency didistribusikan kebeberapa lokasi.
FRAGMENTASI DATA Fragmentasi Horizontal Fragmentasi Vertikal
FRAGMENTASI HORIZONTAL Contoh terdapat table PROJ yg dipecah menjadi fragmen Proj1 dan Proj2 PROJ PNO PNAME BUDGET LOC P1 a 150000 Montreal P2 b 135000 New York P3 c 250000 P4 d 310000 Paris
FRAGMENTASI HORIZONTAL Proj1 Project dgn budget < 200000 Proj2 Project dgn budget >= 200000 PROJ1 PNO PNAME BUDGET LOC P1 a 150000 Montreal P2 b 135000 New York
FRAGMENTASI HORIZONTAL Proj1 Project dgn budget < 200000 Proj2 Project dgn budget >= 200000 PROJ2 PNO PNAME BUDGET LOC P3 c 250000 New York P4 d 310000 Paris
FRAGMENTASI VERTIKAL PNO BUDGET P1 150000 P2 135000 P3 250000 P4 Contoh terdapat table PROJ yg dipecah menjadi fragmen Proj1 dan Proj2 PROJ1 Informasi ttg budget project PROJ2 Informasi ttg nama project dan lokasi PROJ1 PNO BUDGET P1 150000 P2 135000 P3 250000 P4 310000
FRAGMENTASI VERTIKAL PNO PNAME LOC P1 a Montreal P2 b New York P3 c P4 Contoh terdapat table PROJ yg dipecah menjadi fragmen Proj1 dan Proj2 PROJ1 Informasi ttg budget project PROJ2 Informasi ttg nama project dan lokasi PROJ2 PNO PNAME LOC P1 a Montreal P2 b New York P3 c P4 d Paris
ATURAN KEBENARAN FRAGMENTASI COMPLETENESS Jika sebuah relasi R dibagi menjadi fragmen-fragmen R1,R2…Rn maka fragmentasi dikatakan komplit jika dan hanya jika setiap item data yg dapat ditemukan dala R dpt juga ditemukan didalam satu atau lebih Fragmen Ri Aturan ini diperlukan utk memastikan bhw tdk ada data yg hilang selama proses fragmentasi Reconstruction Jika sebuah relasi R dibagi menjadi fragmen R1,R2…Rn maka fragmentasi dikatakan rekonstruksi jika hanya jika R dpt dibentuk dari fragmen Ri Dimungkinkan utk membentuk sebuah relasi R yg terbentuk dari fragmen yg ada Aturan ini diperlukan utk memastikan bhw ketergantungan scr fungsi terpenuhi
ATURAN KEBENARAN FRAGMENTASI DISJOINTNESS Jika sebuah relasi R dibagi menjadi fragmen-fragmen R1,R2…Rn dan data item dj berada didalam fragmen Ri maka fragmentasi dikatakan disjoint jika hanya jika data item dj tdk berada didlm fragmen lain Rk dimana Ktdk sama dg J Jika suatu item data sudah muncul dlm sebuah fragmen, maka item data tersebut tdk boleh muncul lagi di fragmen yg lain Fragmentasi secara vertikal adalah perkecualian dalam aturan ini, karena atribut-atribut dari primary key hrs diulang utk dapat melakukan rekonstruksi Aturan ini diperlukan utk memastikan terjadinya redundansi data seminimal mungkin.
The End