Topik 01
Pengantar Basis Data Terdistribusi
Beda basis data terpusat dan terdistribusi, klasifikasi model data, serta untung-rugi DDBS.
Kemampuan akhir yang diharapkan. Memahami dan mengenali konteks basis data objek terdistribusi, dan dapat membedakannya dengan basis data terpusat.
Kebutuhan sistem basis data
Sistem basis data adalah kumpulan file atau tabel yang saling berhubungan dan memungkinkan beberapa pengguna mengakses serta memanipulasi data yang sama. Dorongannya satu: menyatukan data operasional agar pengaksesannya terkontrol.
- Mengklasifikasikan data agar mudah dipahami pengguna
- Menghindari duplikasi data
- Memudahkan penyimpanan dan pengaksesan data
- Mendukung kinerja aplikasi dalam menyimpan data
- Menjamin kualitas data dan informasi
Terpusat vs terdistribusi
Basis data terpusat menyimpan seluruh data di satu tempat — mainframe atau server tunggal. Basis data terdistribusi menyimpan data di perangkat yang berada di lokasi fisik berbeda, tetapi secara logis tetap satu basis data.
| Aspek | Terpusat | Terdistribusi |
|---|---|---|
| Lokasi penyimpanan | Satu lokasi, terhubung ke server | Beberapa lokasi geografis, dikelola DBMS pusat |
| Pemeliharaan | Lebih mudah — semua di satu tempat | Butuh kerja dan perangkat lunak tambahan |
| Integritas data | Lebih mudah dipertahankan | Lebih sulit; replikasi harus dijaga |
| Beban akses | Semua permintaan ke satu entitas → risiko macet | Paralel antar server → beban seimbang |
| Biaya | Lebih murah | Biaya pemeliharaan dan kompleksitas naik |
| Rancangan | Lebih sederhana | Lebih kompleks |
Klasifikasi model basis data
Model basis data non-spasial secara umum terbagi empat: flat-file, hierarki, jaringan, dan relasional. Basis data terdistribusi sendiri terbagi menjadi BDT terpartisi dan BDT terreplikasi.
| Model | Ciri | Kelebihan | Kekurangan |
|---|---|---|---|
| Flat-file | Satu field per baris, posisi kolom menentukan makna | Sangat sederhana | Logika baca-tulis harus ditulis manual |
| Hierarki | Hubungan parent–child, satu induk per anak | Retrieve cepat, integritas mudah diatur | Redundansi data, pengguna harus paham susunannya |
| Jaringan | Anak boleh punya banyak induk | Query kompleks lebih mudah, akses cepat | Struktur sulit dimodifikasi |
| Relasional | Tabel, tupel, atribut, kunci utama dan asing | Cepat, akurat, mudah diubah | Pengguna harus paham relasi antar tabel dan SQL |
Karakteristik DDBS
Satu basis data logis dibagi menjadi beberapa fragmen; tiap fragmen disimpan di satu atau lebih komputer di bawah kendali DBMS yang terpisah, dihubungkan jaringan komunikasi.
- Kumpulan data logis yang digunakan bersama-sama
- Data dibagi menjadi beberapa fragmen
- Fragmen mungkin mempunyai salinan (replika)
- Fragmen atau replikanya dialokasikan ke situs yang memakainya
- Setiap situs terhubung jaringan komunikasi
- Data di tiap situs di bawah pengawasan DBMS masing-masing
- DBMS tiap situs dapat menangani aplikasi lokal secara otonom
- Setiap DBMS berpartisipasi pada paling tidak satu aplikasi global
Pemrosesan terdistribusi bukan basis data terdistribusi. Pemrosesan terdistribusi adalah mengakses basis data tersentralisasi dari komputer jauh lewat jaringan. Basis datanya tetap satu dan tetap di satu tempat.
Tujuh kelebihan DDBS
| Kelebihan | Isi |
|---|---|
| 1. Merefleksikan struktur organisasi | Organisasi yang bercabang secara alami punya data yang tersebar mengikuti cabangnya. |
| 2. Penggunaan bersama & otonomi lokal | Data ditempatkan dekat penggunanya; DBA lokal mengatur DBMS lokal secara otonom. |
| 3. Ketersediaan meningkat | Kegagalan satu situs tidak mematikan seluruh operasional DBMS. |
| 4. Keandalan meningkat | Fragmen direplikasi; bila satu salinan tak terjangkau, salinan lain dipakai. |
| 5. Kinerja meningkat | Data berada dekat pengguna; setiap situs hanya menangani sebagian beban. |
| 6. Ekonomi | Grosch's Law: beberapa komputer kecil lebih murah daripada satu superkomputer berdaya setara. |
| 7. Perkembangan modular | Situs baru ditambahkan tanpa mengganggu situs yang sudah ada. |
Empat kelemahan DDBS
| Kelemahan | Isi |
|---|---|
| Kompleksitas | DBA harus menyediakan akses cepat, andal, dan mutakhir sekaligus atas data yang direplikasi. |
| Biaya | Biaya jaringan, biaya komunikasi berjalan, dan biaya tenaga ahli pengelola. |
| Keamanan | Bukan hanya replikasi data yang harus dikontrol, jaringannya juga. |
| Kontrol integritas | Menegakkan batasan integritas kerap memerlukan akses ke data dalam jumlah besar di banyak situs. |
Homogen dan heterogen
Pada sistem homogen semua situs memakai produk DBMS yang sama. Pada sistem heterogen produk dan bahkan model datanya berbeda — relasional, jaringan, hierarki, atau berorientasi objek dalam satu sistem.
- Perbedaan perangkat keras saja: yang diubah kode dan panjang kata
- Perbedaan produk DBMS: perlu pemetaan struktur data antar model (mis. SELECT → FIND/GET)
- Perbedaan keduanya: kedua jenis konversi diperlukan sekaligus
Untuk menjembatani perbedaan dipakai gateway, yang mengonversi bahasa dan model data ke bahasa relasional. Keterbatasannya nyata: gateway tidak mendukung manajemen transaksi — ia hanya penerjemah kueri, sehingga kontrol konkurensi dan pemulihan lintas DBMS tidak terkoordinasi.
Coba di terminal
Kueri di bawah memperagakan konsep topik ini pada data sungguhan. Tekan ▶ Jalankan untuk membukanya di Terminal SQL, lalu ubah sesuka hati — sesi terminal adalah salinan pribadi di peramban Anda.
Satu tabel logis, tiga lokasi fisik
Pengguna menulis kueri ke view global pasien; datanya sebenarnya tersebar di tiga situs. terdistribusi
SELECT kota, COUNT(*) AS pasien FROM pasien GROUP BY kota;
SELECT COUNT(*) AS di_bandung_saja FROM pasien@bandung;
Keandalan: situs lain tetap melayani
Kueri yang hanya menyentuh fragmen Jakarta tidak bergantung pada Bandung dan Surabaya. terdistribusi
EXPLAIN PLAN FOR
SELECT nama_pasien FROM pasien@jakarta;
Jalankan sendiri
Ketersediaan & CAP
MTBF/MTTR, ketersediaan replika, kuorum R+W>N, CAP dan PACELC, RTO dan RPO.
Studi Kasus Kependudukan
Skripsi Oracle XE + MySQL lewat ODBC: NIK ganda yang lolos UNIQUE lokal, dan mengapa gateway tidak bisa 2PC.
Sumber: Modul 1 — CTI313 Pengantar Basis Data Terdistribusi (Ir. Nixon Erzed, MT)