Karakteristik DBMS
• DBMS merupakan perangkat lunak yang digunakan untuk menyimpan data.
• Sebuah DBMS harus memiliki karakteristik sbb :
– Data disimpan pada perangkat keras dan harus tetap ada setelah diakses. Metode kases termasuk pembuatan data baru, modifikasi data yang sudah ada, dan penghapusan data. Ini disebut data persistence.
– Banyak user harus diizinkan untuk mengakses data secara bersamaan. Ini disebut concurency.
– Transaksi diatur agar sistem dapat memanipulasi data dan DBMS harus memiliki kemampuan menyimpan sekumpulan pekerjaan.
– Bahasa query harus tersedia untuk mengambil data berdasarkan kriteria yang diberikan oleh user.
– Data harus dapat dipulihkan setelah terjadi kerusakan. Jika data hilang, DBMS harus memiliki kemampuan mengembalikan data tersebut. Ini disebut recovery.
Model Basis Data
• Model Basis Data menyatakan hubungan antar record yang tersimpan dalam basis data.
• Model dasar yang paling umum ada 3 macam, yaitu :
– Hirarkis
– Jaringan
– Relasional
Model Hirarkis
Contoh produk DBMS yang menggunakan model hirarkis adalah IMS (Information Management System), yang dikembangkan oleh perusahaan IBM dan Rockwell International Corporation
• Model Hirarkis ( Hierarchical Model ) adalah model dimana data serta hubungan antar data direpresentasikan dengan record dan link (pointer).
• Record-record tersebut disusun dalam bentuk tree (pohon), dan masing-masing node pada tree tersebut merupakan record/grup data elemen dan memiliki hubungan kardinalitas 1:1 dan 1:M.
• Node yang berada pada puncak tree disebut akar (root), sedangkan node yang berada pada dasar tree disebut daun (leaf).
• Hubungan antar-node disebut cabang.
• Model ini dapat juga menggunakan pola hubungan orang tua-anak (parent-child).
• Setiap simpul (biasa dinyatakan dengan lingkaran atau persegi panjang) menyatakan sekumpulan area/medan.
• Simpul yang terhubung ke simpul pada level di bawahnya disebut simpul orang tua, sedangkan simpul yang dibawahi oleh simpul orang tua disebut simpul anak.
• Setiap simpul orang tua bisa memiliki satu simpul anak (1:1) atau bisa juga beberapa simpul anak (1:M), tetapi setiap simpul anak hanya memiliki satu simpul orang tua.
Kelebihan Model Hirarkis
• Data dapat diambil secara cepat.
• Integritas lebih mudah diatur.
Kekurangan Model Hirarkis
• User harus memahami struktur basis data-nya.
• Terjadi pengulangan data (redundansi).
Model Jaringan
Model Jaringan disebut model DBTG (Database Task Group) atau model CODASYL (Conference on Data Systems Languages). Pada model jaringan, orang tua disebut pemilik dan anak disebut anggota. Suatu simpul anak bisa memiliki lebih dari satu orang tua.
Contoh produk DBMS yang menggunakan model jaringan adalah CA-IDMS/DB, dari Computer Associates International Inc.
• Model Jaringan (Network Model) distandarisasi tahun 1971 oleh Database Task Group (DBTG) atau disebut juga model CODASYL (Conference on Data System Language), mirip dengan model hirarkis dimana data dan hubungan antar data direpresentasikan dengan record dan links.
• Perbedaannya terletak pada susunan record dan linknya yaitu model jaringan menyusun record-record dalam bentuk graph dan menyatakan hubungan kardinalitas 1:1 (satu orang tua punya satu anak), 1:M (satu orang tua punya beberapa anak) dan N:M (beberapa orang tua punya beberapa anak).
• Jika menggunakan pola hubungan orang tua-anak, maka dalam model jaringan bisa saja terjadi bahwa satu simpul anak memiliki beberapa simpul orang tua.
• Oleh karena sifatnya yang demikian, model ini bisa menyatakan hubungan 1:1, 1:M, maupun M:N.
• Jika dilihat berdasarkan strukturnya, maka struktur model jaringan ini merupakan suatu graph yang terdiri dari suatu simpul (node) yang dihubungkan dengan suatu jalur (edge).
Beberapa Ketentuan Untuk Model Jaringan
• Terdapat lebih dari satu edge antara pasangan node.
• Tidak ada konsep root node.
• Suatu node dapat mempunyai lebih dari satu parent node.
Kelebihan Model Jaringan
• Data dapat diakses dengan cepat.
• User dapat mengakses data mulai dari sembarang tabel.
• User lebih mudah dalam membuat model basis data yang lebih kompleks.
• User lebih mudah dalam membuat query yang lebih kompleks untuk mengambil data.
Kekurangan Model Jaringan
• Struktur basis data tidak mudah untuk diubah-ubah.
• Perubahan struktur basis data dapat mempengaruhi program aplikasi yang mengakses database.
• User harus memahami struktur basis data.
Model Relasional
Model Relasional (Relational Model) adalah model yang paling sederhana, mudah digunakan dan dipahami, serta yang paling populer saat ini.
Model Relasional menggunakan sekumpulan tabel berdimensi dua (yang disebut relasi atau tabel), dengan masing-masing relasi tersusun atas tupel/baris/record dan atribut/kolom/field.
Menggunakan kunci tamu (foreign key) untuk berhubungan dengan relasi lain.
DBMS yg bermodelkan relasional biasa disebut RDBMS (Relational Database Management System).
- Ada beberapa sifat yang melekat pada suatu relasi :
ü Tak ada tupel (baris) yang kembar.
ü Urutan tupel tidaklah penting (tupel-tupel dapat dipandang dalam sebarang urutan).
ü Setiap atribut memiliki nama yang unik.
ü Letak atribut bebas (urutan atribut tidak penting).
ü Setiap atribut memiliki nilai tunggal dan jenisnya sama untuk semua tupel.
- Pada model relasional, jumlah tupel/baris suatu relasi disebut kardinalitas dan jumlah atribut/kolom suatu relasi disebut derajat (degree) atau terkadang disebut arity. Relasi yang berderajat satu (hanya memiliki satu atribut) disebut unary. Relasi yang berderajat dua disebut binary dan relasi yang berderajat tiga disebut ternary. Relasi yang berderajat n disebut n-ary.
- Istilah lainnya yang terdapat pada model relasional adalah domain. Domain adalah himpunan nilai yang berlaku bagi suatu atribut.
Kelebihan Model Relasional
• Data dapat diakses secara cepat.
• Struktur database mudah diubah.
• Data disajikan secara logis sehungga user tidak perlu mengetahui bagaimana data disimpan.
• User mudah dalam membuat query yang kompleks untuk mengambil data.
• User mudah menerapkan integritas data.
• Data sering lebih akurat.
• User mudah dalam membuat dan modifikasi program aplikasi.
• Bahasa standar (SQL) sudah dibuat.
Kekurangan Model Relasional
• Kelompok informasi atau tabel yang berbeda harus dihubungkan untuk mengambil data.
• User harus memahami hubungan antar-tabel.
• User harus belajar SQL.