BAB 4
PRINSIP-PRINSIP PERANCANGAN
BASIS DATA
Suatu sistem manajemen
basis data atau DBMS adalah suatu sistem yang dirancang dengan dua tujuan utama
:
Ø
Untuk
menambah, menghapus, dan mengubah data di dalam basis data.
Ø
Untuk
menyedakan cara yang berbeda yang menampilkan (pada layar atau print) data di
dalam basis data.
4.1 REDUDANSI
Redudansi data cenderung melebihi ukuran dari data basis data dan itu
menjadi sebuah masalah yang sangat serius dalam media basis data yang besar.
Atribut dari skema tabel bisa digolongkan ke dalam tiga kelompok :
1. Atribut yang digunakan untuk tujuan idenifikasi
2. Atribut yang digunakan untuk tujuan
informasi
3. Atribut yang digunakan untuk tujuan
keduannya, baik indentifikasi maupun informasi.
Sebagai contoh :
{KdPenerbit,
NmPenerbit, TlpPenerbit, ThnBerdiri}
Pada skema itu, Kdpenerbit digunakan untuk tujuan identifikasi,
tanpa membawa isi informasi. ThnBerdiri adalah untuk tujuan informasi.
{judul,
KdPenerbit, KdPenulis. JmlHalaman, TglHakCipta}.Maka, {judul,
KdPenerbit, KdPenulis} adalah
sebuah kunci. Oleh karena itu, masing-masing atribut tersebut digunakkan
(setidaknya untuk sebagian) untuk mengidentifikasi.
4.2 BENTUK NORMAL
Bentuk khusus, sifat-sifat, atau batasan skema tabel yang dimiliki
untuk mencapai tujuan yang diinginkan, bentuk itu disebut “Bentuk Normal”.
Ada enam bentuk normal yang dikenal, yaitu :
1. Bentuk Normal Pertama (1NF)
2. Bentuk Normal Kedua (2NF)
3. Bentuk Normal Ketiga (3NF)
4. Bentuk Normal Boyce Codd (BCNF)
5. Bentuk Normal Keempat (4NF)
6. Bentuk Normal Kelima (5NF)
4.2.1 BENTUK NORMAL PERTAMA
(1NF)
Berikut sebuah contoh :
ISBN = 979-763-120-6
Judul = Basis Data
Penulis
= Janner Simarmata dan Iman Prayudi
Penerbit
= Andi Yogyakarta
Oleh karena skema dalam kasus ini mengizinkan lebih dari satu nama
penulis sebagai atribut, maka skema bukan dalam bentuk normal pertama.
4.2.2 KETERGANTUNGAN FUNGSIONAL
Sebagai contoh, untuk skema tabel Penerbit, atribut NmPenerbit tergantung sepenuhnya pada atribut KdPenerbit. Dengan demikian, bisa dikatakan bahwa
ketergantungan fungsional dari KdPenerbit ke
NmPenerbit bisa
ditulis :
KdPenerbit =>
NmPenerbit
Skema itu bisa dibaca “KdPenerbit menentukan NmPenerbit” atau “NmPenerbit tergantung pada KdPenerbit”.
` {A,
B, C} => {A, B}
Dikatakan bahwa jika kita mengetahui nilai dari A, B, dan C, maka kita
mengetahui nilai dari A dan B! Seperti ketergantungan fungsional yang sama
sekali tidak menarik dan disebut “trival
dependencies”, semua ketergantungan yang lain disebut “nontrival”.
4.2.3 BENTUK NORMAL KEDUA
{Kota,
Jalan, NomorRumah, WarnaRumah, populasiKota}
Atribut populasiKota tidaklah pada tempatnya karena
merupakan atribut dari kota, bukan alamat rumah. Lebih rincinya, populasiKota lebih kuat bila menjadi sebuah atribut
informasi (bukan untuk identifikasi rumah).
{Kota} => {populasiKota}
Dimana poulasiKota tidak memiliki kunci manapun dan Kota adalah subset yang sesuai kunci, yakni kunci {Kota, Jalan, NomorRumah}
{Judul, KdPenerbit, KdPenulis, Harga,
AlamatPenulis}
Kemudian, {judul, KdPenerbit,
KdPenulis} adalah
satu-satunya kunci. Sekarang,
AlamatPenulis tidak
memiliki kunci yang manapun. Atribut tersebut bergantung pada {KdPenulis} yang merupakan subset yang sesuai
dengan kunci, simbolnya adalah :
{KdPenulis} => {AlamatPenulis}
Sesungguhnya, AlamatPenulis bukanlah berupa potongan informasi tentang
entitas yang dimodelkan di dalam skema tabel (yaitu buku), tetapi lebih kepada
penulis. Tentu saja, kita bisa memindahkan atribut AlamatPenulis
ke skema tabel dalam
bentuk normal kedua.
4.2.4 BENTUK NORMAL KETIGA
{Judul, KdPenerbit,
JmlHalaman, Harga}
Satu-satunya kunci untuk skema tabel itu adalah {Judul, KdPenerbit} JmlHalaman, dan Harga hanyalah atribut informasi.
{Judul} dan {KdPenerbit}
Tetapi tidak ada ketergantungan :
{Judul}
=> {JmlHalaman}
{Judul}
=> {Harga}
{KdPenerbit}
=> {JmlHalaman}
{KdPenerbit}
=> {Harga}
4.2.5 BENTUK NORMAL BOYCE CODD
BNCF merupakan bentuk normal sebagai perbaikan terhadap 3NF. Suatu
relasi BNCF selalu memenuhi 3NF, tetapi tidak sebaliknya. Pertimbangkan skema
tabel {Kota, NmJalan, KodePos} dengan depedensi :
{Kota, NmJalan} => {KodePos}
Dan
{KodePos} => {Kota}
(Dalam kehidupan nyata, suatu kode pos bisa terbagi menjadi dua kota
yang berbeda. Kita akan mengasumsikannya tidak untuk tujuan ilustrasi). Skema
tabel itu berada dalam bentuk normal ketiga. Untuk melihatnya, amati bahwa
kunci adalah {Kota, NmJalan} dan {KodePos,
NmJalan}.
4.3 NORMALISASI
Proses perubahan perancangan basis data menghasilkan skema tabel dalam
bentuk normal yang disebut “Normalisasi”.
Sebagai contoh sederhana, skema tabel :
{ISBN, Judul, Penulis}
Bukanlah dalam bentuk normal karena atribut penulis bisa terisi satu
penulis atau lebih dan tidak atomik. Penggantian di dalam skema tabel untuk dua
skema :
{ISBN, Judul, KdPenulis}
Memungkinkan kita untuk menormalisasikan basis data ke dalam bentuk
normal pertama. Itu adalah contoh lain yang menyertakan bentuk normal yang
lebih tinggi. Ingatlah contoh sebelumnya bahwa skema tabel {Kota, NmJalan,
KodePos} dengan
dependensi :
{Kota, NmJalan} =>
{KodePos}
Dan
{KodePos} => {Kota}
NB:
Semua catatan matpel ini WAJIB dikumpulkan sebelum tanggal 19 April 2015 Pk. 07.30 sebagai bahan penilaian tugas tambahan.
Terimakasih.....
Comments
Post a Comment