Showing posts with label Sistem Basis Data. Show all posts

Sistem Basis Data Terdistribusi



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.
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.
Struktur Basis Data Terdistribusi
  • Sebuah sistem basis data terdistribusi hanya mungkin dibangun dalam sebuah sistem jaringan komputer.
  • Topologi Jaringan :
    1. Topologi bintang (star) 
    2. Topologi Cincin (Ring)
    3. Topologi Bus
  • Perbedaan utama di antara berbagai topologi di atas terletak pada :
    1. Biaya Instalasi ; Biaya dalam membangun hubungan link antar simpul.
    2. Biaya Komunikasi ; Waktu dan biaya dalam pengoperasian sistem berupa pengiriman data dari satu simpul kesimpulan lain.
    3. Kehandalan ; Frekuensi/tingkat kegagalan komunikasi yang terjadi. 
    4. Ketersediaan ; Tingkat kesiapan data yang dapat diakses sebagai antisipasi kegagalan komunikasi.
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.
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
  • Pengelolaan secara transparan data yang terdistribusi
  • Mengacu pada struktur organisasi
  • Meningkatkan untuk berbagi dan otonomi lokal
  • Meningkatkan ketersediaan data
  • Meningkatkan kehandalan
  • Meningkatkan performasi kerja
  • Memudahkan pengembangan sistem
Kerugian yang diberikan oleh sistem basis data terdistribusi
  • Kompleksitas manajemen
  • Kontrol integritas lebih sulit
  • Biaya pengembangan
  • Keamanan
  • Sulitnya standarisasi
  • Menambah kebutuhan penyimpanan
  • Lebih sulit dalam mengatur lingkungan data
Desain Basis Data Terdistribusi
  • Ada beberapa pendekatan yang berkaitan dengan penyimpanan data/tabel dalam sebuah sistem basis data terdistribusi, yaitu :
    1. Replikasi adalah 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. Pengertian lain :
      • Sistem memelihara sejumlah salinan/duplikat tabel-tabel data.
      • Setiap salinan tersimpan dalam simpul yang berbeda, yang menghasilkan replikasi data.
    2. Fragmentasi adalah sebuah fenomena di ruang penyimpanan yang digunakan secara tidak efisien, mengurangi kapasitas penyimpanan. Istilah ini juga digunakan untuk menunjukkan tempat yang gersang itu sendiri. Pengertian lain :
      • Data dalam tabel dipilah dan disebar ke dalam sejumlah fragmen.
      • Tiap fragmen disimpan di sejumlah simpul yang berbeda-beda.
      • Fragmentasi dapat berbentuk fragmentasi horizontal (pemilahan record data) atau fragmentasi vertikal (pemilahan field/atribut data).
    3. Replikasi dan Fragmentasi :
      • Merupakan kombinasi dari replikasi dan fragmentasi.
      • Data/tabel dipilah dalam sejumlah fragmen.
      • Sistem lalu mengelola sejumlah salinan dari masing-masing fragmen tadi di sejumlah simpul.
Replikasi Data
  • Keuntungan :
    1. Ketersediaan yang tinggi.
    2. Peningkatan Keparalelan (Increased paralelism).
    3. Peningkatan beban pengubahan data (Increased overhead on upate).
Fragmentasi Data
  • Dapat diterapkan operasi union ataupun operasi natural join. Contoh ; Tabel nasabah bank dengan struktur dan data sebagai berikut : nasabah = (no_nas, nama_nas, alamat_nas, kota, saldo_simpan, saldo pinjam).
Perbedaan DDBMS dengan Sistem Sentral Hardware
  • Ada banyak komputer yang disebut sites atau nodes.
  • Site-site ini terhubung oleh jaringan komunikasi untuk mengirim data dan perintah-perintah di antara site-site tersebut. 

FRAGMENTASI DAN REPLIKASI


  • FRAGMENTASI
Dalam basis data terdistribusi, fragmentasi dilakukan pada relasi-relasi yang ada pada basis data. Fragmentasi membagi suatu relasi yang ada menjadi sejumlah fragmen atau pecahan relasi yang tetap mempertahankan keutuhan informasi semula. Kelebihan dari fragmentasi, yang menjadi alasan dilakukannya adalah dimungkinkannya pemrosesan data secara paralel dan penempatan tupel relasi, yang berisi sejumlah informasi, pada tempat yang tepat, yaitu yang paling membutuhkannya. Fragmentasi sendiri terbagi atas empat jenis, yaitu:

* primary horizontal: sebuah relasi R(A1, …, An) difragmentasi berdasarkan himpunan predikat-predikat relasi PR = {p1, …, pn}. Tiap-tiap predikat merupakan perbandingan yang digunakan dalam aljabar relasional, yang dapat melibatkan operator perbandingan =, ?, <, atau >.
* derived horizontal: pembuatan partisi suatu relasi R berdasarkan partisi yang dibuat pada relasi lain, misalkan S. Satu atau beberapa atribut di R mengacu kepada primary key pada S.
* vertical: fragmentasi ini dilakukan dengan memisah-misahkan atribut-atribut dari skema relasi R ke dalam skema-skema Ri. Setiap fragmen relasi harus memiliki primary key relasi asli.
* hybrid: fragmentasi yang mempunyai pola campuran dari ketiga relasi di atas

Ilustrasi Fragmentasi

Misalkan ada dua relasi sebagai berikut:

PEGAWAI(NoPeg, NamaPeg, Posisi, Gaji, NoDep)
DEPT(NoDep, NamaDep, Lokasi)

Contoh fragmentasi untuk tiga jenis fragmentasi yang telah disebutkan di atas adalah sebagai berikut:

* dalam fragmentasi primary horizontal, dimisalkan ada himpunan predikat yang diakses oleh aplikasi yang berbeda. Satu aplikasi memperoleh informasi pegawai dengan posisi DBAdmin, sementara aplikasi lainnya memperoleh informasi pegawai dengan gaji lebih besar dari Rp 15 juta. Predikat sederhana dapat dinyatakan dalam himpunan sbb: . Selanjutnya, predikat-predikat dapat dinyatakan ke dalam himpunan dari minterm, yaitu . Selanjutnya, predikat-predikat dapat dinyatakan ke dalam himpunan dari minterm, yaitu sebagai berikut
o m1 = Posisi = ‘DBAdmin’ ^ Gaji > 15000000
o m2 = Posisi ? ‘DBAdmin’ ^ Gaji > 15000000
o m3 = Posisi = ‘DBAdmin’ ^ Gaji = 15000000
o m4 = Posisi ? ‘DBAdmin’ ^ Gaji = 15000000
* dalam fragmentasi derived horizontal, misalkan DEPT dipartisi berdasarkan predikat Lokasi = ‘Bandung’, sehingga ada dua partisi

DEPT1 = sLokasi = ‘Bandung’(DEPT)
DEPT2 = sLokasi ? ‘Bandung’(DEPT)

sementara, itu PEGAWAI dipartisi berdasarkan partisi DEPT sebagai berikut:

PEGAWAIi PEGAWAI left outer join DEPTi

* dalam fragmentasi vertical, relasi PEGAWAI(NoPeg, NamaPeg, Posisi, Gaji, NoDep) difragmentasi ke dalam fragmen relasi PEGAWAI1(NoPeg, NamaPeg, Gaji) dan PEGAWAI2(NoPeg, Posisi, NoDep).

Ketepatan Fragmentasi

Fragmentasi dikatakan tepat apabila memenuhi syarat-syarat berikut:

* kelengkapan: dekomposisi relasi R ke dalam fragmen-fragmen R1, …, Rn dikatakan lengkap jika setiap tupel R dapat ditemukan dalam fragmen Ri mana pun.
* rekonstruksi: jika relasi R terdekomposisi ke dalam fragmen-fragmen R1, …, Rn, terdapat operator relasional sedemikian sehingga .
* disjoint: jika sebuah relasi R dipartisi, sebuah tupel dalam R, jika ditemukan dalam fragmen Ri, tidak akan ditemukan dalam fragmen Rj dengan i ? j.
 

  • REPLIKASI
Sistem basis data terdistribusi dapat menyimpan duplikat dari data yang sama dalam site yang berbeda agar perolehan informasi yang semakin cepat dan toleransi kesalahan. Proses ini disebut replikasi. Replikasi pada relasi bersifat redundan pada dua atau lebih situs.

Replikasi pada relasi disebut replikasi penuh bila relasi tersebut disimpan pada semua situs. Basis data disebut redundan penuh jika tiap-tiap site mengandung duplikat dari keseluruhan basis data.

Replikasi dilakukan karena memiliki kelebihan sebagai berikut:

* jika situs asli yang menyimpan relasi R mengalami kegagalan, relasi R tetap dapat diakses melalui replikanya
* query pada relasi R dapat berjalan secara paralel di simpul (situs) yang berbeda
* lebih sedikit transfer data, yaitu tidak perlu lagi mengambil data suatu relasi melalui jaringan karena sudah ada replika dalam situs lokal.

Namun, proses replikasi juga memiliki kelemahan, antara lain

* proses update yang lebih rumit karena setiap replika relasi R harus di-update.
* kendali atas konkurensi yang lebih rumit karena update terhadap replika secara konkuren dapat menyebabkan basis data menjadi tidak konsisten sehingga diperlukan mekanisme khusus dalam penanganan konkurensi.

Sementara itu, dalam melakukan replikasi, ada dua strategi, yaitu

* sinkron: sebelum seluruh proses transaksi update dinyatakan selesai, data yang telah dimodifikasi disinkronkan ke setiap duplikatnya; proses ini harus menunggu hingga data di tempat penyimpanan duplikat selesai ditulis sebelum dilakukan perubahan lainnya sehingga menjadi lebih kompleks
* asinkron: copy data diperbaharui secara periodik berdasarkan data utama yang diperbaharui; proses penulisan data selesai tanpa perlu menunggu penulisan data di tempat penyimpanan duplikat selesai; proses ini memang meningkatkan kinerja sistem namun risikonya, inkonsistensi data bisa terjadi.

KONSEP DASAR DATABASE

KONSEP DASAR

SISTEM DATABASE  adalah Suatu system penyusunan dan pengelolaan record-record dengan menggunakan komputer, dengan tujuan untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan, sehingga mampu menyediakan informasi yang optimal yang diperlukan pemakai untuk kepentingan proses pengambilan keputusan.

DATABASE  adalah
            Suatu susunan/kumpulan data operasional lengkap dari suatu organisasi/perusahaan yang diorganisir/dikelola dan simpan secara terintegrasi dengan menggunakan metode tertentu, dengan menggunakan komputer, sehingga mampu menyediakan informasi yang optimal diperlukan pemakainya.

KOMPONEN DASAR DARI SISTEM DATABASE
Terdapat 4 komponen pokok dari system database :
1.  DATA, dengan ciri-ciri :
        Data disimpan secara terintegrasi (integrated)
        Data dapat dipakai secara bersama-sama (shared)
         Terintegrated yaitu Database merupakan kumpulan dari berbagai macam file dari aplikasi-aplikasi yang berbeda yang disusun dengan cara menghilangkan bagian-bagian yang rangkap (redundant).
         Shared yaitu Masing-masing bagian dari database dapat diakses oleh pemakai dalam waktu yang bersamaan, untuk aplikasi yang berbeda.


2.   HARDWARE ( perangkat keras)
      Terdiri dari semua peralatan perangkat keras komputer yang digunakan untuk pengelolaan system database berupa :
      * Peralatan untuk penyimpanan, disk, drum, dll
      * Peralatan input dan output
      * Peralatan komunikasi data, dll

3.  SOFTWARE (perangkat lunak)
Berfungsi sebagai perantara (interface) antara pemakai dengan data phisik pada database, dapat berupa :
      * Database Management System (DBMS)
      * Program-program aplikasi & prosedur-prosedur

4.  USER (Pemakai)
     Terbagi menjadi 3 klasifikasi :
         Database Administrator (DBA), orang/team yang bertugas mengelola system database secara keseluruhan
         Programmer, orang/team membuat program aplikasi yang mengakses database dengan menggunakan bahasa pemprograman
         End user, orang yang mengakases database melalui terminal dengan menggunakan query language atau program aplikasi yang dibuat oleh programmer

DATA PADA DATABASE  DAN HUBUNGANNYA
Ada 3 jenis data pada system database, yaitu:
         Data operasional dari suatu organisasi, berupa data yang disimpan didalam database
         Data masukan (input data), data dari luar sistem yang dimasukan melalui peralatan input (keyboard) yang dapat merubah data operasional
         Data keluaran (output data), berupa laporan melalui peralatan output (screen, printer) sebagai hasil dari dalam system yang mengakses data operasional
KEUNTUNGAN PEMAKAIAN SISTEM DATABASE
  1. Terkontrolnya kerangkapan data  dan inkonsistensi
  2. Terpeliharanya keselarasan data
  3. Data dapat dipakai secara bersama-sama
  4. Memudahkan penerapan standarisasi
  5. Memudahkan penerapan batasan - batasan  pengamanan.
  6. Terpeliharanya intergritas data
  7. Terpeliharanya keseimbangan atas perbedaan kebutuhan data dari setiap aplikasi
  8. Program / data independent

KERUGIAN PEMAKAIAN SISTEM DATABASE
  1. Mahal dalam implementasinya
  2. Rumit / komplek
  3. Penanganan proses recorvery & backup sulit
  4. kerusakan pada system basis data dapat mempengaruhi departemen yang terkait
  5. dan lain – lain.

ISTILAH-ISTILAH YG DIPERGUNAKAN DALAM SISTEM
BASIS DATA
a.   Enterprise, suatu bentuk organisasi
            Contoh :   data sekolah  ----- > data mhs
                                    Rumah sakit  ----- > pasien
b.   Entitas, suatu obyek yang dapat dibedakan dengan objek lainnya
            Contoh :  Bidang administrasi siswa  --- >  entitas mahasiswa, buku, pembayaran
                            Bidang kesehatan            --- >  entitas pasien, dokter Obat           
c.  Atribute / field , setiap entitas mempunyai atribut atau suatu sebutan untuk mewakili suatu entitas.
            Contoh :     Entity siswa     ---  >   field Nim, nama_siswa,alamat 
                              Entity nasabah --- >   field Kode_nasabah,nama_nsh

d.   Data value (nilai atau isi data), data actual atau informasi yang disimpan pada tiap data elemen atau attribute. Isi dari atribut disebut nilai data.
            Contoh :  Atribut nama karyawan --- > Sutrisno, budiman,

e.   Record/ tuple, kumpulan elemen-elemen yang saling berkaitan menginformasikan tentang suatu entity secara lengkap.
            Contoh : satu record mewakili satu data/informasi                -- >   nim, nm_mhs, alamat.

f.    File, kumpulan record-record sejenis yang mempunyai panjang elemen sama, attribute yang sama, namun berbeda-beda data valuaenya

g.   Kunci elemen data, tanda pengenal yang secara unik mengindentifikasikan entitas dari suatu kumpulan entitas

h.   Database Management System (DBMS),  kumpulan file yang saling berkaitan bersama dengan program untuk pengelolaannya.