Lewati ke isi
ORACLEDECK

Topik 08

Prinsip Basis Data Terdistribusi

Dua belas aturan Date, otonomi sistem, tidak bergantung situs pusat, dan operasi berkelanjutan.

Kemampuan akhir yang diharapkan. Memahami prinsip-prinsip dasar basis data terdistribusi.

Aturan dasar

Satu aturan mendasari semuanya: bagi pengguna, sistem terdistribusi harus terlihat persis seperti sistem yang tidak terdistribusi. Dua belas aturan berikut adalah penjabarannya.

#PrinsipArti praktis
1Otonomi lokalSitus mengelola datanya sendiri; tidak ada operasi lokal yang bergantung situs lain
2Tidak bergantung situs pusatTidak ada satu situs yang, bila mati, mematikan seluruh sistem
3Operasi berkelanjutanMenambah situs atau mengubah skema tidak memerlukan penghentian sistem
4Independensi lokasiPengguna tidak perlu tahu di mana data disimpan
5Independensi fragmentasiPengguna tidak perlu tahu data dipecah
6Independensi replikasiPengguna tidak perlu tahu ada berapa salinan
7Pemrosesan kueri terdistribusiSatu kueri boleh menyentuh banyak situs dan tetap dioptimasi
8Manajemen transaksi terdistribusiAtomicity dan durability tetap berlaku lintas situs
9Independensi perangkat kerasBebas arsitektur mesin
10Independensi sistem operasiBebas OS
11Independensi jaringanBebas topologi dan protokol jaringan
12Independensi DBMSBebas produk DBMS — inilah yang paling jarang tercapai

Mengapa aturan ke-2 sering dilanggar

Server nama terpusat melanggar aturan 1, 2, dan 3 sekaligus: otonomi lokal berkurang, ada titik kegagalan tunggal, dan bila situs pusat gagal situs lain tidak dapat membuat objek baru. Itulah sebabnya pendekatan awalan situs dan alias lebih disukai walau lebih rumit.

Koordinator 2PC juga merupakan titik kegagalan tunggal — bukan untuk seluruh sistem, tetapi untuk setiap transaksi global yang sedang berjalan. Lab 2PC/3PC menunjukkan persis kapan hal itu berubah menjadi blokir.

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.

Aturan otonomi lokal

Setiap situs menegakkan kendalanya sendiri: CHECK fragmen Bandung menolak pasien kota lain. terdistribusi galat disengaja: ORA-02290

INSERT INTO pasien@bandung (id_pasien, nama_pasien, jenis_kelamin, kota)
VALUES (40, 'Salah tempat', 'P', 'Surabaya');

Tidak bergantung pada situs pusat

Setiap fragmen tercatat di tablespace situsnya sendiri (TS_JAKARTA, TS_BANDUNG, TS_SURABAYA) — tidak ada katalog pusat yang wajib hidup. terdistribusi

\c surabaya
SELECT table_name, num_rows, tablespace_name FROM user_tables;

Jalankan sendiri

Sumber: Modul 1 (RPS pekan 8); C.J. Date, dua belas aturan basis data terdistribusi