A. Normalisasi
Proses normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.
Bentuk Normal
Tujuan proses normalisasi adalah mengkonversi relasi menjadi bentuk normal lebih tinggi. Terdapat beragam tingkat bentuk normal, yaitu :
a. Bentuk normal pertama (1NF)
b. Bentuk normal kedua (2NF)
c. Bentuk normal ketiga (3NF)
d. Bentuk normal Boyce-Codd (BCNF)
e. Bentuk normal keempat (4NF)
f. Bentuk normal kelima (5NF)
Codd mendefinisikan bentuk normal pertama, kedua dan ketiga di makalah (Codd, 1970). Bentuk normal ketiga kemudian diperbaiki sehingga mempunyai bentuk normal yang lebih kuat yaitu BCNF (Codd, 1974). Fagin memperkenalkan bentuk normal keempat (Fagin, 1977), kemudian Fagin juga memperkenalkan bentuk normal kelima (Fagin, 1979).
Bentuk normal pertama untuk menghilangkan atribut bernilai jamak. Bentuk normal kedua untuk menghilangkan kebergantungan parsial. Bentuk normal ketiga untuk menghilangkan kebergantungan transitif. Bentuk normal Boyce-Codd untuk menghilangkan anomaly tersisa disebabkan kebergantungan fungsional. Bentuk normal keempat untuk menghilangkan kebergantungan nilai jamak. Bentuk normal kelima untuk menghilangkan anomaly tersisa.
Tiga bentuk normal pertama berkaitan dengan kebergantungan fungsional. Sementara itu bentuk keempat dan kelima berkaitan dengan redudansi yang disebabkan kebergantungan banyak nilai (multi-valued dependencies).
Bentuk Normal Pertama
Bentuk normal pertama adalah ekivalen dengan definisi model relasional. Relasi adalah bentuk normal pertama (1NF) jika semua nilai atributnya adalah sederhana (bukan komposit).
Syarat :
o Tidak ada set atribut yang berulang atau bernilai ganda.
o Telah ditentukannya primary key untuk tabel atau relasi.
o Tiap atribut hanya memiliki satu pengertian.
o Tiap atribut yang dapat memiiki banyak nilai sebenarnya menggambarkan entitas atau relasi yang terpisah.
Bentuk Normal Kedua
Syarat :
o Bentuk data telah memenuhi kriteria bentuk normal ke satu.
o Atribut bukan kunci(non-key attribute) haruslah memiliki ketergantungan fungsional sepenuhnya pada primary key
Relasi pada bentuk normal kedua harus tidak menyimpan fakta-fakta mengenai bagian kunci relasi. Bentuk normal kedua menghilangkan kebergantungan parsial dan masih memiliki anomali-anomali yang secara praktis tidak dapat diterima.
Bentuk Normal Ketiga
Syarat :
o Bentuk data telah memenuhi kriteria bentuk normal ke dua.
o Atribut bukan kunci(non-key attribute) tidak boleh memiliki ketergantungan fungsional terhadap atribut bukan kunci lainnya. Seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap primary key di relasi itu saja.
Bentuk normal ketiga menghilangkan kebergantungan transitif, awalnya bentuk normal ketiga dipikir sebagai bentuk normal puncak/paling akhir. Namun kemudian dapat ditemukan bentuk normal lebih kuat yaitu bentuk normal Boyce-Codd.
Bentuk Normal Boyce-Codd (BCNF)
BCNF memiliki ketentuan yaitu masing-masing atribut utama bergantung fungsional penuh pada masing-masing kunci dimana kunci tersebut bukan bagiannya. Relasi adalah BCNF (optimal) jika setiap determinan atribut-atribut relasi adalah kunci relasi. Relasi adalah BCNF (optimal) jika kapanpun fakta-fakta disimpan mengenai beberapa atribut, maka atribut-atribut ini merupakan satu kunci relasi. BCNF dapat memiliki lebih dari satu kunci. Properti penting BCNF adalah relasi tidak memiliki informasi yang redundan.
Bentuk Normal Keempat
Relasi dalam bentuk normal keempat (4NF) jika relasi dalam BCNF dan tidak berisi kebergantungan banyak nilai. Untuk menghilangkan kebergantungan banyak nilai dari satu relasi, kita membagi relasi menjadi dua relasi baru. Masing – masing relasi berisi dua atribut yang mempunyai hubungan banyak nilai.
Bentuk Normal Kelima
Bentuk normal kelima (5NF) berurusan dengan properti yang disebut join tanpa adanya kehilangan informasi (lossless join). Bentuk normal kelima (5NF) juga disebut PJNF (projection-join normal form). Kasus-kasus ini sangat jarang muncul dan sulit untuk dideteksi secara praktis.
Contoh Normalisasi pada beberapa tingkatan.
Diberikan tabel Mahasiswa di bawah ini, akan dilakukan normalisasi sampai bentuk normal ke tiga
Proses normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakai di dalam suatu organisasi.
Bentuk Normal
Tujuan proses normalisasi adalah mengkonversi relasi menjadi bentuk normal lebih tinggi. Terdapat beragam tingkat bentuk normal, yaitu :
a. Bentuk normal pertama (1NF)
b. Bentuk normal kedua (2NF)
c. Bentuk normal ketiga (3NF)
d. Bentuk normal Boyce-Codd (BCNF)
e. Bentuk normal keempat (4NF)
f. Bentuk normal kelima (5NF)
Codd mendefinisikan bentuk normal pertama, kedua dan ketiga di makalah (Codd, 1970). Bentuk normal ketiga kemudian diperbaiki sehingga mempunyai bentuk normal yang lebih kuat yaitu BCNF (Codd, 1974). Fagin memperkenalkan bentuk normal keempat (Fagin, 1977), kemudian Fagin juga memperkenalkan bentuk normal kelima (Fagin, 1979).
Bentuk normal pertama untuk menghilangkan atribut bernilai jamak. Bentuk normal kedua untuk menghilangkan kebergantungan parsial. Bentuk normal ketiga untuk menghilangkan kebergantungan transitif. Bentuk normal Boyce-Codd untuk menghilangkan anomaly tersisa disebabkan kebergantungan fungsional. Bentuk normal keempat untuk menghilangkan kebergantungan nilai jamak. Bentuk normal kelima untuk menghilangkan anomaly tersisa.
Tiga bentuk normal pertama berkaitan dengan kebergantungan fungsional. Sementara itu bentuk keempat dan kelima berkaitan dengan redudansi yang disebabkan kebergantungan banyak nilai (multi-valued dependencies).
Bentuk Normal Pertama
Bentuk normal pertama adalah ekivalen dengan definisi model relasional. Relasi adalah bentuk normal pertama (1NF) jika semua nilai atributnya adalah sederhana (bukan komposit).
Syarat :
o Tidak ada set atribut yang berulang atau bernilai ganda.
o Telah ditentukannya primary key untuk tabel atau relasi.
o Tiap atribut hanya memiliki satu pengertian.
o Tiap atribut yang dapat memiiki banyak nilai sebenarnya menggambarkan entitas atau relasi yang terpisah.
Bentuk Normal Kedua
Syarat :
o Bentuk data telah memenuhi kriteria bentuk normal ke satu.
o Atribut bukan kunci(non-key attribute) haruslah memiliki ketergantungan fungsional sepenuhnya pada primary key
Relasi pada bentuk normal kedua harus tidak menyimpan fakta-fakta mengenai bagian kunci relasi. Bentuk normal kedua menghilangkan kebergantungan parsial dan masih memiliki anomali-anomali yang secara praktis tidak dapat diterima.
Bentuk Normal Ketiga
Syarat :
o Bentuk data telah memenuhi kriteria bentuk normal ke dua.
o Atribut bukan kunci(non-key attribute) tidak boleh memiliki ketergantungan fungsional terhadap atribut bukan kunci lainnya. Seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap primary key di relasi itu saja.
Bentuk normal ketiga menghilangkan kebergantungan transitif, awalnya bentuk normal ketiga dipikir sebagai bentuk normal puncak/paling akhir. Namun kemudian dapat ditemukan bentuk normal lebih kuat yaitu bentuk normal Boyce-Codd.
Bentuk Normal Boyce-Codd (BCNF)
BCNF memiliki ketentuan yaitu masing-masing atribut utama bergantung fungsional penuh pada masing-masing kunci dimana kunci tersebut bukan bagiannya. Relasi adalah BCNF (optimal) jika setiap determinan atribut-atribut relasi adalah kunci relasi. Relasi adalah BCNF (optimal) jika kapanpun fakta-fakta disimpan mengenai beberapa atribut, maka atribut-atribut ini merupakan satu kunci relasi. BCNF dapat memiliki lebih dari satu kunci. Properti penting BCNF adalah relasi tidak memiliki informasi yang redundan.
Bentuk Normal Keempat
Relasi dalam bentuk normal keempat (4NF) jika relasi dalam BCNF dan tidak berisi kebergantungan banyak nilai. Untuk menghilangkan kebergantungan banyak nilai dari satu relasi, kita membagi relasi menjadi dua relasi baru. Masing – masing relasi berisi dua atribut yang mempunyai hubungan banyak nilai.
Bentuk Normal Kelima
Bentuk normal kelima (5NF) berurusan dengan properti yang disebut join tanpa adanya kehilangan informasi (lossless join). Bentuk normal kelima (5NF) juga disebut PJNF (projection-join normal form). Kasus-kasus ini sangat jarang muncul dan sulit untuk dideteksi secara praktis.
Contoh Normalisasi pada beberapa tingkatan.
Diberikan tabel Mahasiswa di bawah ini, akan dilakukan normalisasi sampai bentuk normal ke tiga
Denormalisasi
Denormalisasi database adalah pelanggaran aturan normalisasi atau
menjabarkan suatu tataan database yang telah normal untuk meningkatkan
performa pengaksesan data pada database.
Bentuk-bentuk Denormalisasi
1. Atribut yang terderivasi (atribut turunan)
Atribut yang nilainya bisa diperoleh dari nilai-nilai yang sudah ada pada atribut lain
2. Atribut yang berlebihan
Atribut yang memiliki kode tambahan yang menunjukkan beberapa kondisi lainnya
Atribut berlebihan di bagi lagi menjadi:
• Atribut terkodekan (encoded attribute)
Atribut yang memiliki kode tambahan yang menunjukkan beberapa kondisi lainnya
• Atribut gabungan (concatenated attribute)
Atribut dalam domain komposit
• Atribut tumpang-tindih (overlapping attribute)
Atribut dengan nilai yang tidak sepenuhnya ekslusif
• Atribut bermakna ganda (alternate attribute)
Atribut yang memiliki arti berbeda tergantung kelompok entitasnya
3. Tabel rekapitulasi (summary table)
Laporan hasil rekapitulasi akan selalu merupakan hasi pengolahan dari
semua tabel yang ada. Pengolahan tersebut melibatkan banyak tabel
sehingga akan membutuhkan waktu yang lama. Jika hal tersebut sering
diakses dan diperlukan, maka perlu dibuat table khusus untuk menyimpan
data hasil rekapitulasi tersebut.
Contoh Penerapan Denormalisasi Data
denormalisasi dalam 2 jenis :
• melalui pembuatan kolom baru pada tabel / mengabungkan kolom pada tabel satu dengan yang lain.
• melalui pembuatan tabel baru.
cara yang pertama dilakukan apabila data yang didenormalisasi hanya
kecil dan digunakan untuk mempermudah pengaksesan data apabila diakses
dalam satu tabel. Sedangkan yang kedua dilakukan apabila data yang
terdapat dalam tabel tersebut merupakan rangkuman / rekapitulasi dari
satu atau beberapa tabel yang pengaksesannya terpisah dari tabel yang
ada.
contoh :
• denormalisasi
pertama : total sks yang telah diambil seorang mahasiswa. ini dibentuk
dari jumlah sks matakuliah yang pernah diambil.
• denormalisasi
kedua : pembuatan tabel jumlah kehadiran mahasiswa dalam satu semester.
data ini dibentuk dari penjumlahan data harian mahasiswa.
Tidak ada komentar:
Posting Komentar