E N D
Pertemuan 11 FRAGMENTASI DATA
FRAGMENTASI DATA Merupakan sebuah proses pembagian atau pemetaan database dimana database dipecah-pecah berdasarkan kolom dan baris yang kemudian disimpan didalam site atau unit komputer yang berbeda dalam suatu jaringan data, sehingga memungkinkan untuk pengambilan keputusan terhadap data yang telah terbagi. Alasan-alasan diperlukannya fragmentasi, yaitu : • Penggunaan • Efisiensi • Paralleslisme • Keamanan
Kebiasaan ; umumnya aplikasi bekerja dengan tabel views dibandingkan dengan semua hubungan data. Oleh karenanya untuk distribusi data , yang cocok digunakan adalah bekerja dengan subset dari sebuah relasi sebagai unit dari distribusi. • Efisien ; data disimpan dekat dengan yang menggunakan. Dengan tambahan data yang tidak sering digunakan tidak usah disimpan.
Paralel ; dengan fragmen-fragmen tersebut sebagai unit dari suatu distribusi , sebuah transaksi dapat di bagi kedalam beberapa sub queri yang dioperasikan pada fragmen tersebut. Hal ini meningkatkan konkurensi atau paralelisme dalam sistem, sehingga memperbolehkan transaksi mengeksekusi secara aman dan paralel. • Keamanan ; data yang tidak dibutuhkan oleh aplikasi tidak disimpan dan konsukuen tidak boleh di ambil oleh pengguna yang tidak mempunyai otoritas.
BEBERAPAPERATURAN YANG HARUS DIDEFINISIKAN • KETIKA MENDEFINISIKAN FRAGMENT : • 1. Kondisi lengkap (Completeness) • sebuah unit data yang masihdalambagiandarirelasiutama, maka data harusberadadalamsatufragmen. Ketikaadarelasi, pembagiandatanyaharusmenjadisatukesatuandenganrelasinya. • 2. Rekontruksi (Reconstruction) • sebuahrelasiaslidapatdibuatkembaliataudigabungkankembalidarisebuahfragmen. Ketikatelahdipecah-pecah, data masihmemungkinkanuntukdigabungkankembalidengantidakmengubahstruktur data. • 3. Disjointness • data didalamfragmentidakbolehdiikutkandalamfragmen lain agar tidakterjadi redundancy data, kecualiuntukatribut primary key dalamfragmentasivertikal
Kerugian fragmentasi yaitu : • Kinerja yang dapat turun karena data tersebar dan butuh proses untuk penggabungan kembali • Integritas yang dapat terganggu dikarenakan kegagalan pada salah satu site database server
TIGA JENIS FRAGMENTASI : 1. Fragmentasi horisontal terdiridaritupledari fragment global yang kemudiandipecah-pecahataudisekatmenjadibeberapa sub-sets 2. Fragmentasi vertikal Membagiatribut-atributdari fragment global yang tersediamenjadibeberapagrup. 3. Fragmentasi campuran Cara yang sederhana untuk membangun fragmentasi campuran sbb : • Menggunakan fragmentasi horisontal pada fragmentasi vertikal • Menggunakan fragmentasi vertical pada fragmentasi horisontal
CONTOH KASUS JENIS-JENIS FRAGMENTASI Ujian (NIM,Nama_Mhs,Kode_MK,Mt_Kuliah,Nil_Akhir,Grade)
Fragmentasi Horisontalterbagi menjadi 3 fragment yang berbeda berdasarkanMt_Kuliah • RelasiMt_Kuliah=“Sistem Basis Data” • Mt_Kuliah=“Sistem Basis Data” (Ujian)
2. Relasi Mt_Kuliah=“Peranc. Sistem” Mt_Kuliah=“Peranc. Sistem” (Ujian) 3. Relasi Mt_Kuliah=“Visual Basic” Mt_Kuliah=“Visual Basic” (Ujian)
Fragment di atas memenuhi kondisi jika Nama_Mhs dan Mt_Kuliah adalah hal-hal yang memenuhi syarat Fragmentasi vertical: berdasarkan dekomposisi-nya denganmenambahkan tupel id
Relasi 1 = NIM, Nama_Mhs, Mt,Kuliah, Nil_Akhir, Grade, Tuple_ID • NIM,Nama_Mhs,Mt,Kuliah,Nil_Akhir,Grade,Tuple_ID (UJian)
Relasi 2 = NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID (Ujian)
Fragmentasi Campuran Terdapat relasi berdasarkan Mata Kuliah yang sama Relasi 1a. NIM,Nama_Mhs,Mt_Kuliah,Nil_Akhir,Grade,Tuple_ID(Mt_Kuliah=“Perancangan Basis Data” (Ujian)) Relasi 1b. NIM,Nama_Mhs,Mt_Kuliah,Nil_Akhir,Grade,Tuple_ID(Mt_Kuliah=“Peranc. Sistem” (Ujian))
Relasi 1c NIM,Nama_Mhs,Mt_Kuliah,Nil_Akhir,Grade,Tuple_ID(Mt_Kuliah=“Visual Basic” (Ujian)) Bagaimana bentuk database untuk data yang telah mengalami proses fragmentasi? Fragmentasi data merupakan langkah yang diambil untuk menyebarkan data dalam database terdistribusi . Selanjutnya akan dibahas apa yang dimaksud Database terdistribusi.
Adanya perkembangan pada jaringan komputer menghasilkan suatu bentuk desentralsasi . Pendekatan desentralisasi ini merupakan gambaran dari suatu organisasi yang memiliki banyak cabang organisasi, dimana terbagi – bagi menjadi beberapa divisi, departemen, proyek dan masih banyak lagi, dan dalam bentuk infrastruktur dan akan terbagi – bagi kembali menjadi beberapa kantor cabang, pabrik-pabrik dimana setiap unit tersebut mengoperasionalkan datanya secara sendiri – sendiri. (Date,2000).
Data yang digunakan secara bersama- sama dan efisiensi dalam pengaksesan data harus diiringi dengan perkembangan dari sistem basis data terdistribusi, yang merupakan refleksi dari struktur organisasi, sehingga data dapat diakses dimana saja dan melakukan penyimpanan data di lokasi yang memang data tersebut sering digunakan.
DATABASE TERDISTRIBUSI Yaitu kumpulan data yang digunakan bersama yang saling terhubung secara logik tetapi tersebar secara fisik pada suatu jaringan komputer. Karakteristik Database terdistribusi, yaitu : • Kumpulan data yang digunakan bersama secara logik tersebar pada sejumlah komputer yang berbeda • Komputer yang dihubungkan menggunakan jaringan komunikasi • Data pada masing-masing situs dapat menangani aplikasi-aplikasi lokal secara otonom • Data pada masing situs dibawah kendali satu DBMS • Masing-masing DBMS berpartisipasi dalam sedikitnya satu aplikasi global
DBMS Terdistribusi :Sebuah sistem perangkat lunak yang mengatur basis data terdistribusi dan membuat pendistribusian data secara transparan. • DDBMS memiliki satu logikal basis data yang dibagi ke dalam beberapa fragment. Dimana setiap fragment disimpan pada satu atau lebih komputer dibawah kontrol dari DBMS yang terpisah , dengan mengkoneksi komputer menggunakan jaringan komunikasi. • Masing- masing site memiliki kemampuan untuk mengakses permintaan pengguna pada data lokal dan juga mampu untuk memproses data yang disimpan pada komputer lain yang terhubung dengan jaringan.
Pengguna mengakses basis data terdistribusi dengan menggunakan dua aplikasi yaitu aplikasi lokal dan aplikasi global, sehingga DDBMS memiliki karakteristik yaitu : • Kumpulan dari data logik yang digunakan bersama-sama • Data di bagi menjadi beberapa fragment • Fragment mungkin mempunyai copy ( replika ) • Fragment / replika nya di alokasikan pada yang digunakan • Setiap site berhubungan dengan jaringan komunikasi • Data pada masing-masing site dibawah pengawasan DBMS • DBMS pada masing-masing site dapat mengatasi aplikasi lokal, secara otonomi • Masing-masing DBMS berpastisipasi paling tidak satu global aplikasi.
Pemrosesan Terdistribusi : Basis data tersentralisasi yang dapat diakses di semua jaringan komputer
Point utama dari definisi basis data terdistribusi adalah sistem terdiri dari data yang secara fisik di distribusikan pada beberapa site yang terhubung dengan jaringan. • Jika data nya tersentralisasi walaupun ada pengguna lain yang mengakses data melewati jaringan , hal ini bukan disebut dengan DDBMS melainkan pemrosesan secara distribusi.
A B C D E F BENTUK-BENTUK TOPOLOGI DISTRIBUSI DATA : a. Fully Connected network
Fully Connected network : • Keuntungan : kalau salah satu node rusak, yang lainnya masih dapat berjalan (tetapi biaya mahal). • Kerugian : control management tidak terjamin
A B C E D F b. Partialy conneted network
Partially connected network : • Keuntungan : reliability rendah, biaya dapat ditekan • Kerugian : control management tidak terjamin
C. Tree Strutured Network A B C F G D E
Tree structure network : • Keuntungan : bersifat sentral, control management lebih terjamin • Kerugian : kalau node pusat (A) rusak, semua akan rusak. • Cat : setiap proses dimulai dari bawah.
A B C D E F d. Ring network
Ring Network (LAN) : • Keuntungan : rusak satu, yang lain masih berjalan • Kerugian : Control management kurang terjamin karena bersifat desentralisasi
A B C D E e. Star network
Star Network (LAN) : • Keuntungan : - control management lebih terjamin, karena bersifat sentral - reliability rendah • Kerugian : kalau pusat rusak, yang lainnya rusak
KEUNTUNGANDAN KERUGIAN DATABASETERDISTRIBUSI KEUNTUNGAN : • Secara alami mengikuti struktur organisasi • Adanya otonomi lokal • Sifatnya dapat dipakai secara bersama • Peningkatan ketersediaan • Peningkatan kehandalan • Peningkatan kinerja • Ekonomis • Pertumbuhan yang modular
Secara alami mengikuti struktur organisasi • Adanya otonomi lokal: karena data didistribusikan, user dapat mengakses dan bekerja,dengan data tersebut sehingga memiliki kontrol local. • Sifatnya dapat dipakai secara bersam-sama: jika sistem informasi tidak terdistribusi, akan sulit untuk berbagi data dan sumber daya. Sistem DB terdistribusi memungkinkan hal ini. • Peningkatan ketersediaan • Peningkatan kehandalan: jika satu site mengalami crash, dapat membuat beberapa site tidak dapat diakses. Jika data direplikasi ke banyak site, kerusakan hubungan komunikasi tidak menjadikan sistem total tidak dapatdioperasikan.
Peningkatan kinerja: karena setiap site menangani hanya bagian dari DB,CPU dan I/ O tidak seberat seperti DB pusat. Data yang dipakai untuk transaksi disimpan dalam beberapa site, sehingga eksekusi transaksi dapat secara parallel. • Ekonomis: dari biaya komunikasi, baik membagi aplikasi dan memproses secara local di setiap site. Dari biaya komunikasi data, akan lebih murah untuk memelihara sistem komputer dalam satu site dan menyimpan data secara local. • Pertumbuhan yang modular: akan lebih mudah mengakomodasikan ukuran DB yang semakin besar. Ekspansi dapat dilakukan dengan menambah proses dan kekuatan penyimpanan ke jaringan.
KERUGIAN : • Harga software mahal (Biaya) • Kompleksitas • Kelemahan dalam keamanan • Sulitnya menjaga keutuhan data • Kurangnya standar • Kurangnya pengalaman • Perancangan basisdata lebih kompleks
Harga software mahal: Hal ini disebabkan sangat sulit membuat sistem databse distribusi • Kompleksitas: masalah DDBS lebih kompleks dibandingkan denganmanajemen database terpusat • Kelemahan dalam keamanan: akan mudah mengontrol database yang terpusat. Dalam sistem database terdistribusi, jaringan membutuhkan keamanan tersendiri.
Sulitnya menjaga keutuhan data • Kurangnya standar • Kurangnya pengalaman: sistem DB terdistribusi bertujuan umum (generalpurpose) tidak sering digunakan. Yang digunakan adalah sistem prototype yang dibuat untuk satu aplikasi (misal : reservasi pesawat) • Perancangan basisdata lebih kompleks
Latihan Soal Perancangan Basis Data 1. Proses pembagian atau pemetaan database dimana database dipecah pecah menjadi baris dan kolom a. Distribusi d. Restrict b. Pemetaan e. Fragmentasi c. Divide 2. Jenis-jenis fragmentasi a. Restriction, Project b. Distributed c. Drop, Alter, Create d. Horizontal, vertical, campuran e. Ring, Start, Fully Network
Latihan Soal Perancangan Basis Data 2. Jenis-jenisfragmentasi a. Restriction, Project b. Distributed c. Drop, Alter, Create d. Horizontal, vertical, campuran e. Ring, Start, Fully Network 3. Yang merupakancontohfragmentasi vertical adalah a. Mt_Kuliah=“Peranc. Sistem” (Ujian) b. Kd_Kuliah=175 (Ujian) c. Cabang=“Depok” (Toko) d. NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID (Ujian) e. Mt_Kuliah=“Visual Basic” (Ujian)
Latihan Soal Perancangan Basis Data 3. Yang merupakan contoh fragmentasi vertical adalah a. Mt_Kuliah=“Peranc. Sistem” (Ujian) b. Kd_Kuliah=175 (Ujian) c. Cabang=“Depok” (Toko) d. NIM,Kode_MK,Nil_Akhir,Grade,Tuple_ID (Ujian) e. Mt_Kuliah=“Visual Basic” (Ujian) 4. Kerugian penggunaan database terdistribusi adalah : a. Otonomi Lokal d. Avaibility b. Biaya pemrosesan tinggi e. Ekonomis c. Kecepatan terlalu tinggi
Latihan Soal Perancangan Basis Data 4. Kerugian penggunaan database terdistribusi adalah : a. Otonomi Lokal d. Avaibility b. Biaya pemrosesan tinggi e. Ekonomis c. Kecepatan terlalu tinggi 5. Relasi dipartisikan ke dalam beberapa bagian, setiap bagian disimpan pada lokasi yang berbeda merupakan tehnik : a. Controlling d. Normalisasi b. Fragmentasi data e. Recovery c. Crash
Latihan Soal Perancangan Basis Data 5. Relasi dipartisikan ke dalam beberapa bagian, setiap bagian disimpan pada lokasi yang berbeda merupakan tehnik : a. Controlling d. Normalisasi b. Fragmentasi data e. Recovery c. Crash 1. Salah satu topologi distribusi data, dimana masing-masing terminal atau node saling terhubungi yaitu : a. Tree struktur network c. Partiality network b. Fully connected network d. Star network e. Ring Network