2. Denormalisasi database
• pelanggaran aturan normalisasi atau
menjabarkan suatu tataan database yang telah
normal untuk meningkatkan performa
pengaksesan data pada database. Database yang
telah normal disini dimaksudkan database yang
redundansi datanya minim sehingga data yang
disimpan tidak mengalami kerancuan dalam
proses pengaksesan.
•
3. Denormalisasi dapat menggunakan
dua cara yaitu :
• Dengan pembuatan kolom baru pada tabel /
mengabungkan kolom pada tabel satu dengan
yang lain.
• · Dengan pembuatan tabel baru
4. • 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.
5. KEGUNAAN DENORMALISASI
• Apabila kita menilik lebih lanjut tentang proses
pengaksesan yang dilakukan database sewaktu
data yang berada dalam suatu tabel ada 1000
baris dengan 100 juta baris. Hal itu akan terasa
sangat beda proses kita menunggu untuk dapat
melihat data. Itupun apabila kita mengaksesnya
dari beberapa tabel yang setiap tabel berisikan
jutaan data dan kita hanya menginginkan
sebagian saja. Dari situ denormalisasi diperlukan,
untuk menjaga kestabilan performa suatu sistem.
7. a. Atribut yang terderivasi (atribut
turunan)
•
Atribut turunan adalah atribut yang nilai-nilainya
diperoleh dari pegolahan atau dapat diturunkan dari
atribut atau tabel lain yang berhubungan. Atribut yang
demikian sebenarnya dapat ditiadakan dari sebuah
tabel, karena nilai-nilainya bergantung pada nilai yang
ada pada atribut lainnya.hal inilah yang disebut sebagai
denormalisasi. Yang keberadaan atributnya bersifat
redundan. Atribut semacam ini digunakan untuk
menghindari proses perhitungan yang berulang dan
memakan banyak waktu.
8. • Contoh :
• Tampilkan berapa banyak matakuliah yang sudah
diambil oleh mahasiswa tertentu!
• Select count (*) from mengambil where NIM =
’09.51.0062’;
• Untuk menampilkan banyak mata kuliah; di lakukan
denormalisasi yaitu dengan menambahkan beberapa
baru agar tidak memakan banyak waktu dalam
pemrosesannya.
• Dari perintah di atas, terlihat kalau adanya
penambahan atribut total_sks, total_matkul,dan ipk.
Atribut-atribut itu disebut atribut turunan.
9. • Atribut yang berlebihan
• Atribut yang berlebihan atribut yang
menyatakan lebih dari satu fakta.Atribut
berlebihan terbagi atas beberapa bagian yaitu
:
•
10. • Atribut Terkodekan
• Atribut terkodekan adalah atribut yang
memiliki kode tambahan yang menunjukkan
beberapa kondisi lainnya.
•
11. • Contoh :
• id_mk di tabelkuliah yang didalamnya sudah
terkandung data program studi. Data program
studi ini sebenarnya tidak diperlukan lagi karena
sudah ada atribut prog_studi di tabel kuliah.
• Tapi akan menjadi aneh jika kode matakuliah
tidak mengikuti format aturan penulisan yang
ada. Untuk itu kita bisa lakukan denormalisasi
dengan tetap menuliskan kode matakuliah seperti
di atas.
12. • Atribut Gabungan
• Atribut gabungan adalah atribut yang terdiri
dari atribut yang lain.
13. • Contoh :
• Atribut nim di tabel mahasiswa merupakan gabungan dari
tahun masuk/angkatan dengan program studi dan no urut
mahasiswa. Dengan demikian atribut ini sebenarnya tidak
atomik (bagian terkecil) karena masih bisa dibagi lagi.
• Misalnya : NIM : 09.51.0062
(Ket: angkatan.jurusan.no urut).
• Sama halnya dengan atribut terkodekan,akan menjadi aneh
jika nomor mahasiswa tersebut hanyalah
nomor urut.Tentuhal ini akan membutuhkan informasi lebih
tentang angkatan dan terdaftar dijurusan mana mahasiswa
tersebut.
14. Atribut Tumpang Tindih
• Atribut tumpang tindih adalah atribut dengan
nilai yang tidak sepenuhnya ekslusif (bersifat
khusus).
15. • Contoh :
• Atribut semester di tabel kuliah berisikan:
• – ‘1’ : matakuliah ganjil
• – ‘2’ : matakuliah genap
• – ‘3’ : matakuliah ganjil & genap
• Nilai ‘3’ mencakup semester genap dan ganjil sekaligus(jadi
tidak ekslusif).
• Jadi sebaiknya matakuliah dimasukkan dua kali, jika itu di
laksanakan di semester ganjil dan genap.
• Tentu saja hal ini melanggar aturan normalisasi
(redundansi), tapi untuk performansi hal ini dapat
‘dilanggar’.
16. • Atribut Bermakna Ganda
• Atribut bermakna ganda adalah atribut yang
memiliki arti berbeda tergantung kelompok
entitasnya.
•
17. • Contoh :
• Di tabel dosen terdapat atribut gaji. Bagi dosen tetap
atribut ini berisi gaji tetap perbulan, sedangkan bagi dosen
tidak tetap gaji ini berisi insentif (gaji tambahan) mengajar
tiap sks.
• Jika gaji dosen harus dibedakan, maka harus disediakan 2
buah atribut yakni gaji_tetap dan
gaji_tidak_tetap.Walaupun sama-sama berisi tentang
jumlah gaji yang diterima dosen, hal ini tentu
sajamelanggar aturan normalisasi karena ada blok data
yang kosong. Tetapi sekali lagi, denormalisasi dalam hal ini
boleh dilakukan.
•
18. Tabel Rekapitulasi
• Laporan hasil rekapitulasi akan selalu merupakan hasil 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
tabel khusus untuk menyimpan data hasil rekapitulasi tersebut.
• Pada contoh kasus sebelumnya, akan dibutuhkan waktu yang lama
jika harus menghitung jumlah matakuliah, jumlah sks dan ipk
mahasiswa yang pengolahannya berasal dari beberapa tabel.
• Untuk itu bisa dibuat tabel khusus, misal : rekap_mahasiswa yang
berisi data tentang jumlah matakuliah, jumlah sks, ipk.
• Hal ini tentu saja akan menimbulkan redundansi, tapi dengan
mempertimbangkan performansi, Denormalisasi pada kasus ini
perlu dilakukan.
•
19. Kesimpulan
• Pengaruh denormalisasi terhadap basis data
cukup besar khususnya dalam hal meningkatkan
performansi database. Terkait dengan
denormalisasi pembuatan database penting juga
untuk dilakukan karena hal ini akan mempunyai
efek terhadapat kecepatan akses data sehingga
akan mempercepat proses pelayanan sehingga
waktu yang dibutuhkan lebih efesien.
•