TUGAS SISTEM TERDISTRIBUSI
Tentang “Database Terdistribusi”
Oleh : Ari Adiarman / 1102644 Dhiya Ulhaq / 1102647 Fenty Andria Putri / 1102627
PENDIDIKAN TEKNIK INFORMATIKA & KOMPUTER FAKULTAS TEKNIK UNIVERSITAS NEGERI PADANG 2013
DATABASE TERDISTRIBUSI
A. Konsep Database Terdistribusi
Database terdistribusi Yaitu kumpulan data yang digunakan bersama yang saling terhubung secara logic tetapi tersebar secara fisik pada suatu jaringan computer. Dalam sebuah database terdistribusi, database disimpan pada beberapa komputer. Komputer-komputer dalam sebuah sistem terdistribusi berhubungan satu sama lain melalui bermacam-macam media komunikasi seperti high-speed buses atau telephone line. Sebuah sistem database terdistribusi berisikan sekumpulan site, di mana tiap-tiap site dapat berpartisipasi dalam pengeksekusian transaksi-transaksi yang mengakses data pada satu site atau atau beberapa site. Tiap-tiap site site dapat memproses transaksi transaksi lokal lokal yaitu sebuah transaksi transaksi yang mengakses data pada satu site di mana transaksi telah ditentukan. Sebuah site juga dapat mengambil bagian dalam mengeksekusi transaksi global yaitu transaksi yang yang mengakses data pada site site yang berbeda di mana transaksi transaksi telah ditentukan, atau transaksi yang mengakses data pada beberapa site yang berbeda. Perbedaan utama antara database terdistribusi dengan database terpusat adalah pada sistem terpusat data berada pada satu lokasi, sedangkan pada database terdistribusi data berada pada beberapa lokasi. 2 aspek penting database terdistribusi : 1. Distribusi : data data tidak disimpan pada tempat (prosesor) (prosesor) yang sama, sehingga DDB dapat dibedakan dari database tunggal, sentralisasi 2. Korelasi logika : data memiliki property yang berhubungan s ehingga database terdistribusi dapat dibedakan dari sekumpulan database local atau file yang yang disimpan pada tempat yang berbeda pada jaringan komputer.
B. Karakteristik Database Terdistribusi
1. Kumpulan data yang digunakan bersama secara logic tersebar pada sejumlah computer yang berbeda. 2. Komputer yang dihubungkan menggunakan jaringan komunikasi. 3. Data pada masing-masing situs dapat menangani ap likasi-aplikasi local secara otonom. Kemampuan untuk mengatur database local dan mengoperasikannya secara sendiri
–
sendiri jika terjadi error atau kerusakan pada koneksi antar komputer. 4. Data pada masing situs di bawah kendali satu DBMS. Database Management Sistem atau disingkat DBMS adalah perangkat lunak (Software) yang berfungsi untuk mengelola database, mulai dari membuat database itu sendiri, sampai dengan proses-proses yang berlaku dalam database tersebut, baik berupa entry, edit, hapus, query terhadap data, membuat laporan dan lain sebagainya secara efektif dan efisien. Salah satu jenis DBMS yang sangat terkenal saat ini adalah Relational DBMS (RDBMS), yang merepresentasikan data dalam bentuk tabel-tabel yang saling berhubungan. Sebuah tabel disusun dalam bentuk baris (record) dan kolom (field). Banyak sekali berkembang perangkat lunak RDBMS ini, misalnya MySQL, Oracle, Sybase, dBase, MS. SQL, Microsoft Access (MS. Access) dan lain-lain. 5. Masing-masing DBMS berpartisipasi dalam sedikitnya satu aplikasi global.
C. Keuntungan dan Kerugian Database Terdistribusi
1. Keuntungan database terdistribusi a. Pengawasan distribusi dan pengambilan data Jika beberpa site yang berbeda dihubungkan, seorang pemakai yang 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. b. Reliability dan availability Sistem distribusi dapat terus menerus berfungsi dalam menghadapi kegagalan dari site sendiri atau mata rantai komunikasi antar site.
c. Kecepatan pemrosesan query Contoh : jika site-site gagal dalam sebuah sistem terdistribusi, site lainnya dapat melanjutkan operasi jika data telah direplikasi pada beb erapa site. d. Otonomi lokal Pendistribusian sistem mengijinkan sekelompok individu dalam sebuah perusahaan untuk melatih pengawasan lokal melalui data mereka sendiri. Dengan kemampuan ini dapat mengurangi ketergantungan pada pusat pemrosesan. e. Efisiensi dan fleksibel Data dalam sistem distribusi dapat disimpan dekat dengan titik diman data tersebut dipergunakan. Data dapat secara dinamik bergerak atau disain, atau salinannya dapat dihapus. 2. Kerugian database terdistribusi a. Harga software mahal, Hal ini disebabkan sangat sulit untuk membuat sistem database distribusi. b. Kompleksitas Site-site beroperasi secara paralel sehingga lebih sulit untuk menjamin kebenaran dan algoritma. Adanya kesalahan mungkin tak dapat diketahui. c. Biaya pemrosesan tinggi Perubahan pesan dan penambahan perhitungan dibutuhkan untuk mencapai koordinasi antar site. d. Sulit menjaga keutuhan data Banyaknya pengaksesan data membuat kurangnya sekuritas terhadap data yang telah terdistribusi. e. Kurangnya standar Tidak ada tool atau metodologi untuk membantu user mengubah database terpusat ke database terdistribusi. f. Kurang pengalaman sistem DB terdistribusi bertujuan umum (generalpurpose) tidak tidak sering digunakan. Yang digunakan adalah sistem prototype yang dibuat untuk satu aplikasi (misal : reservasi pesawat).
g. Perancangan basis data lebih kompleks Sebelumnya menjadi keuntungan. Tetapi karena distribusi menyebabkan masalah sinkronisasi dan koordinasi, kontrol terdistribusi menjadi kerugian atau kekurangan di masalah ini.
D. Sifat Database Terdistribusi
Terdapat dua macam sifat dari database terdistribusi yaitu Heterogenous dan Homogenous. 1. Homogen Artinya suatu database terdistribusi dimana data di distribusikan pada beberapa komputer dengan menggunakan DBMS(database management system) yang sama. DBMS digunakan pada database terdistribusi untuk melakukan koordinasi data pada beberapa node. 2. Heterogen Adalah kebalikan dari Homogen dimana data di sebarkan dengan menggunakan DBMS yang berbeda. Tujuan utama dari database terdistribusi menyediakan kemudahan untuk mengakses data bagi user pada banyak lokasi yang berjauhan. Untuk mencapai tujuan ini system dari database terdistribusi harus menyediakan apa yang di sebut location transparency yang artinya seorang user dalam mengakses data tidak akan terbatas pada tempat, di manapun dia berada user dapat mengakases data.
E. Arsitektur Basis data terdistribusi
1. Client-server Sistem client-server mempunyai satu atau lebih proses client dan satu atau lebih proses server, dan sebuah proses client dapat mengirim quer y ke sembarang proses server . Client bertanggung jawab pada antar muka untuk user, sedangkan server mengatur data dan mengeksekusi transaksi. Sehingga suatu proses client berjalan pada sebuah personal computer dan mengirim query ke sebuah server yang berjalan pada mainframe. Arsitektur ini menjadi sangat popular untuk beberapa alasan. Pertama, implementasi yang relatif sederhana karena pembagian fungsi yang baik dan karena server tersentralisasi. Kedua, mesin server yang mahal utilisasinya tidak terpengaruh pada interaksi pemakai, meskipun
mesin client tidak mahal. Ketiga, pemakai dapat menjalankan antarmuka berbasis grafis sehingga pemakai lebih mudah dibandingkan antar muka pada server yang tidak userfriendly.
2. Collaboration Arsitektur client-server tidak mengijinkan satu query mengakses banyak server karena proses client harus dapat membagi sebuah query ke dalam beberapa subquery untuk dieksekusi pada tempat yang berbeda dan kemudian membagi jawaban ke subquery. Proses client cukup komplek dan terjadi overlap dengan server; sehingga perbedaan antara client dan server menjadi jelas. Untuk mengurangi perbedaan digunakan alternatif arsitektur client-server yaitu sistem Collaboration Server. Pada sistem ini terdapat sekumpulan server basis data, yang menjalankan transaksi data lokal yang bekerjasama mengeksekusi transaksi pada beberapa server . Jika server menerima query yang membutuhkan akses ke data pada server lain, sistem membangkitkan subquery yang dieksekusi server lain dan mengambil hasilnya bersama-sama untuk menggabungkan jawaban menjadi query asal.
F. Penyimpanan data pada database terdistribusi
1. Replikasi Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data dan objek-objek database dari satu database ke database lain dan melaksanakan sinkronisasi antara database sehingga konsistensi data dapat terjamin. Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke lokasi yang berbeda melalui koneksi jaringan lokal maupun internet. Replikasi juga memungkinkan untuk mendukung kinerja aplikasi, penyebaran data fisik sesuai dengan den gan penggunaannya, penggun aannya, seperti pemrosesan transaksi online dan DSS (Desiscion Support System) atau pemrosessan database terdistribusi melalui beberapa server. Ada dua macam teknologi yang di gunakan untuk membangun sebuah database terditribusi. 1. synchronous distributed database technology dimana data yang terhubung pada suatu jaringan akan selalu ter-update sehingga user pada beberapa tempat dapat mengakses data. 2. Asynchronous distributed database technology di mana system akan menyediakan suatu kopi dari replikasi data pada beberapa node sehingga local server dapat mengakses data tanpa harus keluar dari da ri jaringan lokal. Keuntungan dari replikasi data yaitu : a. Reliability jika sebuah sistem yang menyimpan suatu database mengalami kerusakan maka sistem lain dapat menemukan copy dari database yang di maksud pada node yang lain yang tidak mengalami kerusakan system karena database di simpan pada beberapa node. b. Fast response setiap situs mempunyai kopi dari database sehingga proses query data dapat berjalan lebih cepat. c. Node decoupling
setiap transaksi data bisa di proses tanpa koordinasi antar jaringan sehingga jika sebuah node sibuk atau mengalami kesalahan maka akan ada sistem tersendiri yang menangani koordinas antar data. d. Reduced network trafic at prime time kemampuan sistem untuk memindahkan transaksi database pada jaringan yang sedang tidak sibuk atau berfungsi dengan tidak sebagaimana mestinya. 2. Fragmentasi Relasi dibagi ke dalam beberapa fragment, masing2 disimpan di site yang berbeda. Alasan-alasan diperlukannya fragmentasi, yaitu : 1. Penggunaan umumnya aplikasi bekerja dengan
tabel views dibandingkan dengan semua
hubungan data. Oleh karenanya untuk distribusi data , yang cocok digunakan adalah bekerja dengan subset dari d ari sebuah relasi sebagai unit dari distribusi. 2. Efisiensi Data disimpan dekat dengan yang menggunakan. Dengan tambahan data yang tidak sering digunakan tidak usah disimpan. 3. Pararelisme Dengan fragmen-fragmen fragmen-fragmen tersebut sebagai
unit dari suatu distribusi distribusi , sebuah
transaksi dapat di bagi kedalam beberapa
sub queri yang dioperasikan pada
fragmen tersebut. Hal ini meningkatkan konkurensi atau paralelisme dalam sistem, sehingga memeperbolehkan transaksi mengeksekusi secara aman dan paralel. 4. Keamanan Data yang tidak dibutuhkan oleh aplikasi tidak disimpan dan konsukuen tidak boleh di ambil oleh pengguna yang tidak mempunyai otoritas. Kelemahan Fragmentasi : 1. Kinerja cara kerja dari aplikasi yang membutuhkan data dari beberapa lokasi fragmen di beberapa situs akan berjalan dengan lambat. 2. Integritas
pengawasan integritas akan lebih sulit jika data dan fungsional ketergantungan di fragmentasi dan dialokasi pada beberapa situs yang berbeda. Ada 2 strategi, yaitu fragmentasi horizontal dan vertikal. a. fragmentasi vertikal.
Terdiri dari fragmen atribut (kolom) untuk semua record
Frekuensi akses data : dibuat berdasarkan jenis atribut (kolom) tertentu
b. Fragmen horizontal : •
Terdiri dari fragmen record (baris) untuk semua atribut
•
Frekuensi akses data : dibuat berdasarkan salah satu atribut (kolom) dengan nilai tertentu
Contoh Fragmentasi Vertikal & Horizontal :
G. Klasifikasi Bentuk Database Pada DDB
Site-site dalam database terdistribusi dihubungkan secara fisik dengan berbagai cara. Beberapa topologi digambarkan sebagai sebuah graph yang simpul-simpulnya bersesuaian dengan site. Sebuah edge dari simpul A ke simpul B bersesuaian dengan sebuah hubungan langsung antara dua site. Beberapa konfigurasi (bentuk) digambarkan sebagai berikut: 1. Full Connected Network Karakteristik dari Full Connected Network ialah ia tetap dapat berjalan meskipun salah satu node rusak. Namun control management tidak menjamin, selain itu biaya yang digunakan cukup mahal.
2. Partialy Connected Network Keuntungan : reliability rendah, biaya dapat ditekan Kerugian : control management tidak terjamin
3. Tree Structure Network Keuntungan : bersifat sentral, control management lebih terjamin. Kerugian : kalau node pusat (A) rusak, semua akan rusak.
4. Ring Network
Rusak satu, yang lain masih berjalan Kontrol man ajemen kurang terjamin karena bersifat dsesentralisasi. 5. Star Network
Rusak satu, yang lain masih berjalan, Kontrol man ajemen kurang terjamin karena bersifat dsesentralisasi.