DBMS Terdistribusi - Lingkungan Database

Di bagian tutorial ini, kita akan mempelajari berbagai aspek yang membantu dalam merancang lingkungan database terdistribusi. Bab ini dimulai dengan jenis database terdistribusi. Basis data terdistribusi dapat diklasifikasikan menjadi basis data homogen dan heterogen yang memiliki divisi lebih lanjut. Bagian selanjutnya dari bab ini membahas arsitektur terdistribusi yaitu client-server, peer-to-peer dan multi-DBMS. Akhirnya, alternatif desain yang berbeda seperti replikasi dan fragmentasi diperkenalkan.

Jenis Basis Data Terdistribusi

Database terdistribusi dapat secara luas diklasifikasikan ke dalam lingkungan database terdistribusi yang homogen dan heterogen, masing-masing dengan sub-divisi lebih lanjut, seperti yang ditunjukkan pada ilustrasi berikut.

Basis Data Terdistribusi Homogen

Dalam database terdistribusi homogen, semua situs menggunakan DBMS dan sistem operasi yang identik. Properti-propertinya adalah -

  • Situs tersebut menggunakan perangkat lunak yang sangat mirip.

  • Situs menggunakan DBMS atau DBMS yang identik dari vendor yang sama.

  • Setiap situs mengetahui semua situs lain dan bekerja sama dengan situs lain untuk memproses permintaan pengguna.

  • Basis data diakses melalui satu antarmuka seolah-olah itu adalah basis data tunggal.

Jenis Database Terdistribusi Homogen

Ada dua jenis database terdistribusi homogen -

  • Autonomous- Setiap database independen yang berfungsi sendiri-sendiri. Mereka terintegrasi dengan aplikasi pengontrol dan menggunakan pengiriman pesan untuk berbagi pembaruan data.

  • Non-autonomous - Data didistribusikan di seluruh node homogen dan pusat atau master DBMS mengoordinasikan pembaruan data di seluruh situs.

Basis Data Terdistribusi Heterogen

Dalam database terdistribusi heterogen, situs yang berbeda memiliki sistem operasi, produk DBMS, dan model data yang berbeda. Properti-propertinya adalah -

  • Situs yang berbeda menggunakan skema dan perangkat lunak yang berbeda.

  • Sistem dapat terdiri dari berbagai DBMS seperti relasional, jaringan, hierarki atau berorientasi objek.

  • Pemrosesan kueri rumit karena skema yang berbeda.

  • Pemrosesan transaksi rumit karena perangkat lunak yang berbeda.

  • Sebuah situs mungkin tidak mengetahui situs lain sehingga ada kerjasama yang terbatas dalam memproses permintaan pengguna.

Jenis Basis Data Terdistribusi Heterogen

  • Federated - Sistem basis data heterogen bersifat independen dan terintegrasi bersama sehingga berfungsi sebagai sistem basis data tunggal.

  • Un-federated - Sistem database menggunakan modul koordinasi pusat di mana database diakses.

Arsitektur DBMS Terdistribusi

Arsitektur DDBMS umumnya dikembangkan tergantung pada tiga parameter -

  • Distribution - Ini menyatakan distribusi fisik data di berbagai situs.

  • Autonomy - Ini menunjukkan distribusi kontrol dari sistem database dan sejauh mana setiap konstituen DBMS dapat beroperasi secara independen.

  • Heterogeneity - Ini mengacu pada keseragaman atau ketidaksamaan model data, komponen sistem, dan database.

Model Arsitektur

Beberapa model arsitektur yang umum adalah -

  • Klien - Arsitektur Server untuk DDBMS
  • Arsitektur Peer - to - Peer untuk DDBMS
  • Arsitektur Multi-DBMS

Klien - Arsitektur Server untuk DDBMS

Ini adalah arsitektur dua tingkat yang fungsinya dibagi menjadi server dan klien. Fungsi server terutama mencakup manajemen data, pemrosesan kueri, pengoptimalan, dan manajemen transaksi. Fungsi klien terutama mencakup antarmuka pengguna. Namun, mereka memiliki beberapa fungsi seperti pemeriksaan konsistensi dan manajemen transaksi.

Dua klien yang berbeda - arsitektur server adalah -

  • Server Tunggal Banyak Klien
  • Beberapa Server Banyak Klien (ditampilkan dalam diagram berikut)

Arsitektur Peer-to-Peer untuk DDBMS

Dalam sistem ini, setiap rekan bertindak sebagai klien dan server untuk memberikan layanan database. Teman sebaya berbagi sumber daya mereka dengan rekan lain dan mengoordinasikan aktivitas mereka.

Arsitektur ini umumnya memiliki empat level skema -

  • Global Conceptual Schema - Menggambarkan pandangan logis global data.

  • Local Conceptual Schema - Menggambarkan organisasi data logis di setiap situs.

  • Local Internal Schema - Menggambarkan organisasi data fisik di setiap situs.

  • External Schema - Menggambarkan tampilan data pengguna.

Arsitektur Multi-DBMS

Ini adalah sistem basis data terintegrasi yang dibentuk oleh kumpulan dua atau lebih sistem basis data otonom.

Multi-DBMS dapat diekspresikan melalui enam level skema -

  • Multi-database View Level - Menggambarkan beberapa tampilan pengguna yang terdiri dari himpunan bagian dari database terdistribusi terintegrasi.

  • Multi-database Conceptual Level - Menggambarkan multi-database terintegrasi yang terdiri dari definisi struktur multi-database logis global.

  • Multi-database Internal Level - Menggambarkan distribusi data di berbagai situs dan multi-database ke pemetaan data lokal.

  • Local database View Level - Menggambarkan pandangan publik atas data lokal.

  • Local database Conceptual Level - Menggambarkan organisasi data lokal di setiap situs.

  • Local database Internal Level - Menggambarkan organisasi data fisik di setiap situs.

Ada dua alternatif desain untuk multi-DBMS -

  • Model dengan level konseptual multi-database.
  • Model tanpa level konseptual multi-database.

Alternatif Desain

Alternatif desain distribusi untuk tabel di DDBMS adalah sebagai berikut -

  • Tidak direplikasi dan tidak terfragmentasi
  • Direplikasi sepenuhnya
  • Direplikasi sebagian
  • Fragmented
  • Mixed

Tidak direplikasi & tidak terfragmentasi

Dalam alternatif desain ini, tabel berbeda ditempatkan di situs berbeda. Data ditempatkan sedemikian rupa sehingga berada di dekat lokasi tempat data paling sering digunakan. Ini paling cocok untuk sistem database di mana persentase kueri yang diperlukan untuk menggabungkan informasi dalam tabel yang ditempatkan di situs berbeda rendah. Jika strategi distribusi yang tepat diterapkan, alternatif desain ini membantu mengurangi biaya komunikasi selama pemrosesan data.

Direplikasi Sepenuhnya

Dalam alternatif desain ini, di setiap situs, satu salinan dari semua tabel database disimpan. Karena, setiap situs memiliki salinan seluruh database sendiri, kueri sangat cepat sehingga memerlukan biaya komunikasi yang dapat diabaikan. Sebaliknya, redundansi besar-besaran dalam data membutuhkan biaya besar selama operasi pembaruan. Oleh karena itu, ini cocok untuk sistem di mana sejumlah besar kueri diperlukan untuk ditangani sedangkan jumlah pembaruan basis data rendah.

Direplikasi Sebagian

Salinan tabel atau bagian tabel disimpan di situs berbeda. Distribusi tabel dilakukan sesuai dengan frekuensi akses. Ini mempertimbangkan fakta bahwa frekuensi mengakses tabel sangat bervariasi dari situs ke situs. Jumlah salinan tabel (atau bagian) bergantung pada seberapa sering kueri akses dijalankan dan situs yang menghasilkan kueri akses.

Terfragmentasi

Dalam desain ini, tabel dibagi menjadi dua atau lebih bagian yang disebut sebagai fragmen atau partisi, dan setiap fragmen dapat disimpan di situs yang berbeda. Ini mempertimbangkan fakta bahwa jarang terjadi bahwa semua data yang disimpan dalam tabel diperlukan di situs tertentu. Selain itu, fragmentasi meningkatkan paralelisme dan memberikan pemulihan bencana yang lebih baik. Di sini, hanya ada satu salinan dari setiap fragmen dalam sistem, yaitu tidak ada data yang berlebihan.

Tiga teknik fragmentasi adalah -

  • Fragmentasi vertikal
  • Fragmentasi horizontal
  • Fragmentasi hibrida

Distribusi Campuran

Ini adalah kombinasi dari fragmentasi dan replikasi parsial. Di sini, tabel awalnya terfragmentasi dalam bentuk apa pun (horizontal atau vertikal), dan kemudian fragmen ini direplikasi sebagian di lokasi yang berbeda sesuai dengan frekuensi mengakses fragmen.