Overview BASIS DATA TERDISTRIBUSI Fatoni, MM.,M.Kom.
DEFINISI 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 hubungannya.
DEFINISI DBMS Terdistribusi adalah Sebuah sistem perangkat lunak yang mengatur basis data terdistribusi dan membuat pendistribusian data secara transparan. Distributed DBMS memiliki satu logikal basis data yang dibagi ke dalam beberapa fragment/bagian. Dimana setiap fragment disimpan pada satu atau lebih komputer dibawah kontrol dari DBMS yang terpisah, dengan mengkoneksi komputer menggunakan jaringan komunikasi.
DEFINISI 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 :
Karakteristik DBMS Kumpulan dari data logik yang digunakan bersama-sama Data di bagi menjadi beberapa fragment/bagian 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.
Contoh Basis Data Terdistribusi Misalnya sebuah bank yang memiliki banyak cabang, bahkan di sebuah kota bisa terdiri dari beberapa cabang/kantor. Masing-masing lokasi memiliki jaringan lokal sendiri, dan semua jaringan lokal itu dihubungkan satu sama lain membentuk sebuah jaringan nasional.
Konsep Basis Data Terdistribusi • Sistem Komputasi Terdistribusi adalah sejumlah elemen proses yang terkoneksi melalui jaringan komputer dan saling bekerjasama dalam melakukan suatu tugas. • Basis Data Teridistribusi adalah kumpulan basis-basis data yang saling berhubungan secara logika dan tersebar pada sebuah jaringan komputer.
Konsep Basis Data Terdistribusi... • Sistem Manajemen Basis Data adalah sebuah sistem software yang mengelola basis data terdistribusi. Pada sistem basis data terdistribusi, data di simpan tersebar di beberapa tempat. • Setiap tempat penyimpanan dikelola oleh suatu DBMS yang mandiri.
Konsep Basis Data Terdistribusi... • Agar tampilan view basis data terdistribusi transparan, maka harus memenuhi dua hal, yaitu: independensi data terdistribusi dan atomisitas transaksi terditribusi (All or None : instruksi dilaksanakan seluruhnya atau tidak sama sekali).
Konsep Basis Data Terdistribusi... • Dengan independensi data terdistribusi, pengguna dapat melakukan query secara sederhana tanpa menyebutkan tempat data atau replika data atau fragmen data itu disimpan. • Ini memenuhi prinsip independensi data fisik dan data logik atau data logik tidak tergantung data fisik.
Konsep Basis Data Terdistribusi... • Lebih jauh lagi proses query juga harus sudah memperhitungkan biaya antara penyimpanan data fisik melalui komunikasi data atau disimpan sebagai data lokal (replika).
Konsep Basis Data Terdistribusi... • Dengan atomisitas transaksi terdistribusi pengguna harus dapat melakukan transaksi tulis, update atau akses data terhadap data terdistribusi, seolah-olah data disimpan secara lokal. • Efek transaksi terhadap data terdistribusi harus bersifat atomik, yaitu:
Konsep Basis Data Terdistribusi... Perubahan secara persisten terhadap data remote dan data lokal, jika transaksi telah commit, atau tidak terjadi perubahan sama sekali jika transaksi gagal (tidak dapat commit).
Konsep Basis Data Terdistribusi... • Walaupun secara umum kedua hal tersebut harus dipenuhi, tetapi pada situasi jika terjadi lalu lintas data yang padat dan terjadi kelambatan transmisi, maka diperlukan mekanisme khusus untuk menanganinya yang berkaitan dengan overhead administrasi dan performansi DBMS.
Jenis Basis Data Terdistribusi • Jika DBMS yang menangani data untuk semua server sejenis, maka sistem basis data tersebut disebut sebagai sistem basis data terdistribusi homogen, Sistem yang homogen berarti sistem database terdistribusi yang menghubungkan DBMS yang bertipe sama, kompatibel, struktur dan deskripsi datanya sama
Jenis Basis Data Terdistribusi • Tetapi, sebaliknya jika DBMS yang menangani data terdistribusi beragam, tidak kompatibel maka disebut sistem basis data terdistribusi heterogen atau disebut juga sebagai sistem multi basis data.
Jenis Basis Data Terdistribusi Kunci keberhasilan membangun sistem yang heterogen adalah pada standarisasi protokol gateway. • Protokol gateway adalah API (Application Programming Interface) yang memungkinkan DBMS berfungsi untuk aplikasi eksternal, sebagai contoh seperti : ODBC dan JDBC.
Jenis Basis Data Terdistribusi ODBC (Open DataBase Connectivity), Standar terbuka untuk konektivitas antar mesin basis data. JDBC (Java DB Connectivity) Application Programming Interface (API) yang dirancang untuk mengakses database universal berdasar SQL.
Jenis Basis Data Terdistribusi • Akses basis data terdistribusi melalui protokol gateway menjadi mungkin, karena perbedaan format data dan perbedaan antar server dijembatani.
DBMS yang Terdistribusi
DBMS yang Terdistribusi Basis data terdistribusi terbagi menjadi beberapa fragment yang disimpan di beberapa komputer dan mungkin di replikasi, dan alokasi penyimpanan tidak diketahui pengguna . Adanya Transparansi/interaksi user di dalam basis data terdistribusi agar terlihat sistem ini seperti basis data tersentralisasi.
Pemrosesan Terdistribusi
Pemrosesan Terdistribusi Pemrosesan Distribusi adalah 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.
Paralel DBMS Sistem manajemen basis data ini menggunakan beberapa prosesor dan disk yang dirancang untuk dijalankan secara paralel, apabila di mungkinkan, selama hal tersebut digunakan untuk memperbaiki kinerja dari DBMS DDBMS memiliki perbedaan dengan paralel DBMS. Sistem DBMS berbasis pada sistem prosesor tunggal dimana sistem prosesor tunggal tidak memiliki kemampuan untuk berkembang, untuk menghitung skala efektifitas dan biaya, keandalan dan kinerja dari sistem. Paralel DBMS di jalankan oleh berbagai multi prosesor
BASIS DATA TERDISTRIBUSI ? (lanj) Distribusi data yang terpisah secara fisik akan menimbulkan masalah yang tidak dijumpai ketika database ada di komputer yang sama. Inilah yang membedakan antara DDBS dengan Multiprocessor. DDBS bukan merupakan sistem dimana meskipun ada jaringan komputer, tapi databasenya hanya terletak disatu node dari jaringan tsb.
BASIS DATA TERDISTRIBUSI? (Lanj) Jaringan Komputer atau Koleksi File, tidak cukup untuk membentuk DDBS!!!.
Jenis Transaksi Transaksi Lokal Transaksi yang mengakses data pada suatu simpul (mesin/server) yang sama dengan simpul dari mana transaksi tersebut dijalankan. Transaksi Global. 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.
Teknologi DDBS (Distributed Database System) Merupakan gabungan dari dua pendekatan pengolahan data yang sama sekali berlawanan : Database System, dan Teknologi Jaringan Komputer. Tujuan utama Database System Mengintegrasikan data dan sentralisasi, sehingga akses (deskripsi, manipulasi dan kontrol) terhadap data sangat terkontrol Integration, not Centralization
Teknologi DDBS (Distributed Database System) Tujuan utama Jaringan Komputer Membuat mode kerja yang benar-benar menghindari terjadinya sentralisasi beban kerja. Teknologi DDBS mengintegrasikan sistem database yang terdistribusi, untuk menghasilkan suatu teknologi yang powerful dan menjanjikan Integration without Centralization
Distributed Processing (Distributed Computing) Apa itu Distributed Processing (Distributed Computing)? Beberapa sinonim dari Distributed Processing: Distributed Function: Distribusi fungsi (CPU atau I/O) meskipun dalam sistem single-processor komputer. Distributed Computing System: Interkoneksi sejumlah elemen-elemen pengolahan (computing device yang dapat mengeksekusi program di masing- masing) dalam suatu jaringan komputer dan bekerjasama dalam menjalankan suatu tugas. Apa yang didistribusikan? Processing logic Functions, pendelegasian ke bermacam-macam hardware/software (tergantung fungsi komputer)
Distributed Processing (Distributed Computing) Data, pendistribusian data ke sejumlah site pengolahan. Control, kontrol eksekusi sejumlah task secara terdistribusi. Network Multiprocessors Timeshared systems
Distributed Processing (Distributed Computing) (lanj) Klasifikasi Distributed Computing Systems (by Bochmann): 1. Berdasarkan degree of coupling Saling Tergantung 2. Berdasarkan struktur interkoneksi 3. Berdasarkan ketergantungan komponen 4. Berdasarkan sinkronisasi antar komponen Berdasarkan degree of coupling (derajat konektivitas antar elemen pengolahan), yakni rasio jumlah pertukaran data per jumlah pengolahan lokal suatu task: - Weak Coupling/Ketergantungan Lemah : Computer Network - Strong Coupling/Ketergantungan Kuat : A Computer
Distributed Processing (Distributed Computing) (lanj) Berdasarkan struktur interkoneksi: Point-to-point interconnection Common/umum interconnection channel Berdasarkan ketergantungan komponen: Saling tergantung saat eksekusi suatu task Komunikasi diawal sebelum eksekusi dan setelah eksekusi Apa perlunya Distribusi? Respon terhadap struktur organasi yang mengarah ke distributed enterprise. Lebih ekonomis, praktis dan terpercaya (reliable)
Ciri Ciri Basis Data Terdistribusi Data disimpan di sejumlah tempat Prosessor pada tempat yang berbeda tersebut dihubungkan dengan jaringan komputer Sistem basis data terdistribusi bukan terdiri dari sekumpulan file yang berada pada berbagai tempat tetapi pada sebuah basis data di berbagai tempat Setiap tempat secara mandiri memproses permintaan user yang membutuhkan akses ke data di tempat tersebut dan juga mampu untuk memproses data yang tersimpan di tempat lain.
Keuntungan yang diberikan oleh sistem basis data terdistribusi Otonomi Lokal: Karena data terdistribusi, kelompok user yang bisa menggunakan data tersebut dapat menyimpannya di site dimana dia bekerja, sehingga masing-masing site mempunyai kontrol lokal. Performansi Tinggi: Karena data yang digunakan umumnya lebih dekat dengan user, maka performansi akses ke database dapat ditingkatkan. Kepercayaan: Karena ada replikasi data di lebih dari satu tempat, maka kemungkinan crashnya satu node/site, atau hilangnya aksessibilitas karena kegagalan link komunikasi, tidak membuat data untuk tidak dapat diakses.
Keuntungan yang diberikan oleh sistem basis data terdistribusi Ekonomis: Dari sisi communication cost: Lebih ekonomis dengan membagi aplikasi dan menjalankannya di beberapa situs lokal, dari pada satu aplikasi dipaksa untuk akses ke database yang tersebar. Dari sisi biaya normal: Lebih ekonomis membeli komputer kecil-kecil yang kemampuannya sama dengan satu komputer besar. Ekspansinya Mudah: Dapat disesuaikan dengan mudah seiring dengan berkembangnya ukuran database. Paling sekitar penambahan pengolahan dan kemampuan penyimpanan di jaringan. Jelas, bahwa kemampuannya tidak akan bertambah secara linier, tapi paling tidak improvisasi dapat dimungkinkan. Shareability: Kemampuan share Untuk merespon trend organisasi ke arah distributed fashion/mode
Kerugian yang diberikan sistem basis data terdistribusi Kurangnya Pengalaman: Minimnya percobaan di lingkup kerja nyata. Kompleksitas: Menambah masalah baru dari masalah yang ada pada DBS. Biaya: Menambah biaya hardware (hardware u/ mekanisme komunikasi). Memang H/W sekarang murah shg biaya tdk terlalu signifikan, tapi biaya pengembangan teknologi/software dalam masalah teknis (distributed debuggers dll) sangat diperlukan. Selain itu adalah biaya untuk replikasi usaha/tenaga (manpower), yang dibutuhkan di beberapa site Analisa trade-off/perdagangan antara keuntungan dari efisiensi/efektivitas penggunaan informasi dengan biaya penambahan personel.
Kerugian yang diberikan sistem basis data terdistribusi Kontrol yang Terdistribusi: Ini kelebihan yang sudah disebut, tapi sayangnya ini dapat menimbulkan masalah sinkronisasi dan koordinasi Keamanan: Sekuriti jaringan lebih kompleks dari sekuriti akses database yang tersentralisasi. Migrasi yang susah: Belum ada tool atau metodologi yang dapat membantu untuk konversi dari DBS ke DDBS.
Struktur dari database terdistribusi Sistem database terdistribusi terdiri dari kumpulan tempat, masing-masing memelihara sistem database lokalnya, masing-masing tempat dapat memproses transaksi lokal. Beberapa konfigurasi dari sistem database terdistribusi: 1. Fully connected Network 2. Partially connected Network 3. Tree connected Network 4. Star network 5. Ring network
Fully connected Network
Partially connected Network
Tree connected Network
Ring Network
Star Network
Selesai