BASIS DATA TERDISTRIBUSI
Kelompok :
1.
Herdi Muzadi R
(H1D015018)
2.Theza Gema Sandi (H1D015022)
3.M Fauzan Ramadhan (H1D015039)
4.Butar Butar Ines
(H1D015047)
5.Mutiara Dwi A
(H1D015058)
6.M Endhyka
(H1D016035)
7.Aji Nurcahyo
(H1D016047)
Pengertian
Basis Data Terdistribusi adalah kumpulan
data logic yang saling berhubungan secara
fisik terdistribusi dalam jaringan komputer,
yang tidak tergantung dari program aplikasi
sekarang maupun masa yang akan datang.
File merupakan kumpulan data yang
dirancang untuk suatu aplikasi atau
sekumpulan aplikasi yang dekat
Jenis
TerpusatTransaksi yang mengakses data pada suatu
simpul (mesin/server) yang sama dengan simpul dari mana transaksi tersebut dijalankan.
Terdistribusi
Transaksi yang membutuhkan pengaksesan data di simpul yang berbeda dengan simpul dimana transaksi tersebut dijalankan, atau transaksi dari sebuah simpul yang
membutuhkan pengaksesan data ke sejumlah simpul lainnya.
Struktur Basis Data Terdistribusi
Topologi Jaringan
a. Topologi bintang (star)
b. Topologi Cincin (Ring)
c. Topologi Bus
Perbedaan utama Topologi
Biaya Instalisasi, biaya dalam membangunhubungan (link) antar simpul.
Biaya komunikasi, waktu dan biaya dalam
pengoperasian sistem berupa pengiriman data dari satu simpul ke simpul lain.
Kehandalan, Frekuensi/tinggkatan kegagalan
dalam komunikasi yang terjadi
Ketersediaan, tingkatan kesapan data yang
diakses sebagai antisipasi kegagalan komunikasi.
2 jenis transaksi
Transaksi lokal, Transaksi yang mengakses
basis data di server yang sama dengan server dari mana transaksi tersebut dijalankan.
Transaksi global, transakais yang
membutuhkan data di server yang berada dengan server di mana transsaksi tersebut di jalankan, atau transksi dari sebuah server
yang mmebutuhkan pengaksesan data ke sejumlah server lain.
Keuntungan Basisdata
Terdistribusi
Pengawasan distribusi dan pengambilan data
Jika beberpa site yg berbeda dihubungkan
seorang pemakai yg berada pada satu site dapat mengakses data pada site lain. Contoh : sistem distribusi pada sebuah bank memungkinkan
seorang pemakai pada salah satu cabang dapat mengakses data cabang lain.
Reliability dan availability
Sistem distribusi dapat terus menerus berfungsi dalam menghadapi kegagalan dari site sendiri atau mata rantai komunikasi antar site.
Kecepatan pemrosesan query
Contoh : jika site-site gagal dalam sebuah sistem terdistribusi site lain dapat melanjutkan operasi jika data telah direplikasi pada beberapa site.
Otonomi lokal
Pendistribusian sistem mengijinkan sekelompok individu dalam sebuah
perusahaan utk melatih pengawasan lokal melalui data mereka sendiri. Dengan
kemampuan ini dapat mengurangi
ketergantungan pada pusat pemrosesan.
Efisiensi dan fleksibe
Data dalam sistem distribusi dapat disimpan dekat dgn titik diman data tersebut
dipergunakan. Data dapat secara dinamik bergerak atau disain atau salinan dapat dihapus.
Kelemahan
Harga software mahal
Hal ini disebabkan sangat sulit utk membuat sistem database distribusi.
Kemungkinan kesalahan lbh besar
Site-site beroperasi secara paralel sehingga lbh sulit utk menjamin kebenaran dan
algoritma. Ada kesalahan mungkin tak dapat diketahui.
Biaya pemrosesan tinggi
Perubahan pesan dan penambahan perhitungan dibutuhkan utk mencapai koordinasi antar site.
Desain
Terdapat 3 desain basisdata terdistribusi:
➢Replikasi
➢
Fragmentasi
Replikasi
Replikasi database adalah seperangkat
teknologi yang digunakan untuk menyalin
dan mendistribusikan data dari satu database ke database yang lain. Dan selanjutnya,
mensinkronisasikan antar database untuk menjaga konsistensi. Dengan replikasi, data dapat didistribusikan ke lokasi yang berbeda dan pengguna yang jauh melalui LAN, WAN, Dial-up Connection, wireless connections, dan internet.
Keuntungan:
Ketersediaan yang tinggi (Availability) Peningkatan Keparalelan (increased
parallelism)
Peningkatan beban pengubahan data
(increased overhead on update) Kelemahan:
Proses update ang lebih rumit karena setiap
replikasi rlasi R harus di-update
Kendali atas konkurensi yang lebih rumit
kerena update terhadap replica secara
Alasan umum yang mendasari
kenapa harus menggunakan
replikasi, yaitu:
Untuk membuat sebuah server basis
data siaga. Jika server utama gagal,
maka server siaga dapat mengambil alih
tugas server utama.
Untuk mengaktifkan backup tanpa harus
mematikan server utama. Setelah terjadi
replikasi, backup dilakukan pada slave,
bukan pada master. Dengan cara
ini, masterdapat dibiarkan untuk
Replikasi akan memperbaiki performansi
dari operasi query dan meningkatkan
ketersediaaan data khususnya untuk
transaksi transaksi pembacaan saja.
Perubahan/penulisan data akan lebih
lama dan lebih sukar ketimbang
Untuk menyimpan data saat ini di beberapa
lokasi. Replikasi diperlukan jika beberapa cabang dari suatu organisasi harus bekerja dari salinan terbaru dari basis data yang sama.
Untuk menyeimbangkan beban kerja
beberapa server. Sehingga memungkinkan untuk membuat replika dari satu basis data pada beberapa server, replikasi dapat
membantu meringankan beban kerja dari server basis data tunggal yang kelebihan beban dengan memecah query antara beberapa server, masing-masing berjalan pada perangkat keras terpisah. (Vaswani, 2010).
Demo replikasi Mysql
Siapkan 2 komputer yang terkoneksi / terhubung
dan 2 komputer tersebut sudah ter-install MySQL sebagai proses kegiatan database.
Dalam proses replikasi database dikenal 2 server
database atau 2 MySQL pada komputer yaitu sebagai Master server dan Slave server.
Master server adalah server yang biasa dipergunakan untuk melakukan kegiatan managing database.
Slave Server adalah database yang bertindak sebagai pencatat sekaligus pereplikasi /
pengopian data setiap melakukan kegiatan
managing database pada Master Server. Slave Server memiliki alamat IP 192.168.1.1 sedangkan alamat Master Server memiliki alamat IP
buatlah user pada Server Slave yang
dapat diakses oleh siapapun dalam
jaringan manapun. Sebagai contoh,
buatlah user dengan nama tamu dan
password tamu serta user tamu ini
memiliki akses GRANT ALL pada semua
database.
Pada Komputer Master Server
Buka file my.ini yang terdapat pada
path C:\Program Files\MySQL\MySQL Server
5.1\my.ini.
Setelah itu masukkan konfigurasi dibawah [mysqld] :
misalkan nama database yang digunakan
Bila sudah, simpan perubahan tersebut,
lalu restart service mysql dengan cara
mematikan dan menghidupkan lagi
servicenya.
Setelah itu, untuk memulai proses replikasi,
perintah yang digunakan adalah sebagai
berikut :
Lalu
refresh
perubahan dengan perintah
Pada Komputer Slave
Server :
Buka file my.ini yang terdapat pada
path C:\Program Files\MySQL\MySQL Server
5.1\my.ini.
Setelah itu masukkan konfigurasi dibawah [mysqld] :
nama database harus sama dengan nama database pada server master, serta server id pada master dan slave server haruslah berbeda
Bila sudah simpan perubahan pada
file my.ini, lalu lakukan restart service
mysqlnya
Fragmentasi Data
Fragmentasi merupakan sebuah proses pembagian
atau pemetaan dari tabel-tabel berdasarkan kolom-kolom dan baris-baris data menjadi unit data
terkecil.
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. Data yang telah dipecah-pecah masih memungkinkan untuk digabungkan lagi dengan maksud untuk kelengkapan pendataan.
Dalam melakukan fragmentasi data harus memenuhi beberapa kondisi agar proses fragmen tersebut benar, diantaranya:
Completeness, sebuah unit data yang masih dalam
bagian dari relasi utama, maka data harus berada dalam satu fragmen. Ketika ada relasi, pembagian datanya harus menjadi satu kesatuan dengan
relasinya.
Reconstruction, sebuah relasi asli dapat dibuat
kembali atau digabungkan kembali dari sebuah fragmen. Ketika telah dipecah-pecah, data masih memungkinkan untuk digabungkan kembali dengan tidak mengubah struktur data.
Disjointness, data didalam fragmen tidak boleh
diikutkan dalam fragmen lain agar tidak terjadi
redundancy data, kecuali untuk atribut primary key dalam fragmentasi vertikal.
Adapun aturan untuk pelaksanaan fragmentasi:
Fragmen dibentuk dari predikat yang telah dipilih
dan diasosiasikan dengan transaksi yang terdapat dalam database. Predikat secara spesifik
mencantumkan nilai atribut yang digunakan dalam format conjuctive (AND) dan disjunctive (OR) yang digunakan untuk memilih command, dan kolom
(record) yang berisi nilai yang sama dengan format fragment.
Fragment harus terpisah dan gabungan dari
fragment-fragment tersebut harus terdiri atas
keseluruhan fragment. Fragment yang mendahului akan menjadi lebih sulit untuk dianalisis dan
diimplementasikan.
Fragment yang terbesar adalah keseluruhan tabel,
fragment terkecil merupakan sebuah record. Fragment harus didesain sedemikian rupa untuk
Jenis Fragmentasi Data
Fragmentasi Horizontal
Fragmentasi Vertikal
Fragmentasi Horizontal
Terdiri dari tuple dari fragment global
yang kemudian dipecah-pecah atau
disekat menjadi beberapa sub-sets.
Penyekatan tipe ini sangat berguna
didalam database terdistribusi, dimana
setiap sub-setsdapat berisi data yang
memiliki properti secara umum.
Fragmentasi horizontal didefinisikan
menurut sebuah kondisi atau predikat
yang menyatakan bahwa tuple yang
ada telah mencukupi.
Fragmentasi Vertikal
Yaitu fragmentasi yang akan membagi lagi
atribut-atribut dari fragment global yang tersedia menjadi beberapa grup. Bentuk
yang paling simple dari fragmentasi vertical adalah dekomposisi, dimana sebuah row-id yang unik dapat disertakan dalam setiap fragment untuk menjamin dan
memungkinkan terjadinya proses rekonstruksi melalui sebuah operasi join. Dengan kata lain bahwa fragmentasi jenis ini akan membagi sebuah data menjadi beberapa tabel yang atributnya saling terkait.