BAB IV
Normalisasi Data
Pada perspekt if Norm alisasi, sebuah basis dat a dapat dikat akan baik ( efisien) , j ika set iap t abel yang m enj adi unsur pem bent uk basis dat a
b b d d l k d l
5. Normalisasi dengan Ketergantungan Fungsional
BAB IV
Sebuah t abel dikat akan baik ( efisien) at au norm al, j ika t elah m em enuhi 3 krit eria berikut :
1. Jika ada dekom posisi ( penguraian) t abel, m aka dekom posisinya harus dij am in am an (Lossless- Join Decom posit ion)
t ersebut berada dalam keadaan norm al
2. Terpeliharanya ket ergant ungan fungsional pada saat perubahan dat a (Dependency Preservat ion)
3 Tidak m elanggar Boyce Code Norm al Form ( BCNF) 3. Tidak m elanggar Boyce- Code Norm al Form ( BCNF)
Jika krit eria ket iga ( BCNF) t idak dapat t erpenuhi, m aka paling t idak, t abel t ersebut t idak m elanggar Bent uk Norm al t ahap Ket iga (3rdNorm al Form /
5. Normalisasi dengan Ketergantungan Fungsional
Unt uk m enunj ukkan adanya proses dekom posisi t abel, akan lebih baik j ika keseluruhan t abel ( basis dat a akadem ik sederhana pada bab I I I ) direkonst ruk si keseluruhan t abel ( basis dat a akadem ik sederhana pada bab I I I ) direkonst ruk si m enj adi sebuah t abel t unggal ( yang t ent u saj a sangat t idak efisien)
Tabel t unggal t ersebut m erangkum sem ua kelom pok dat a yang saling berhubungan ( berelasi ) disebut sebagai t abel Universal ( Universal/ St ar Table)
Dari t abel t unggal ini akan dit erapkan krit eria Norm alisasi diat as sehingga akan diperoleh sej um lah t abel yang sudah norm al ( efisien) m elalui proses
D e k om posisi
Dekom posisi sendiri m erupakan langkah yang paling sering dit em puh dalam pr oses Nor m alisasi, j ika sebuah t abel t idak m em enuhi Bent uk Norm al t ert ent u
5. Normalisasi dengan Ketergantungan Fungsional
BAB IV
Tabel Universal (Hasil rangkuman Data Mahasiswa, Dosen, Kuliah, Nilai dan Jadual) nim nama_mhs alamat_mhs tgl_lahir kode_kul nama_kul sks semes
ter
Kondra Sambangan, Jakarta 43113
Dari t abel Universal t ersebut diat as, dengan m em perhat ikan kesam aan dan ket idaksam aan dat a diant ara baris- baris dat a j uga dengan m em aham i hubungan alam iah ant ar dat a, m aka dapat dibent uk sej um lah KF :
nim Ænama_mhs nim Æalamat_mhs nim Ætgl_lahir
Dapat disingkat dengan notasi :
5. Normalisasi dengan Ketergantungan Fungsional
BAB IV
kode_kul Ænama_kul kode_kul Æsks kode kul Æsemester
Dapat disingkat dengan notasi :
kode_kul Æsemester nim, kode_kul Æindeks_nilai
Ada kelem ahan m endasar dari t abel Universal diat as yait u : • Pengulangan inform asiPengulangan inform asi
• Pot ensi inkonsist ensi dat a pada operasi pengubahan dat a
• Tersem bunyinya inform asi t ert ent u
At as kelem ahan t ersebut m aka perlu dilakukan D e k om posisi, yait u m elakukan pem ilahan t abel universal t ersebut m enj adi beberapa t abel dengan m em pert im bangkan KF yg t elah didapat kan.
Pada prinsipnya D e k om posisidilakukan agar set iap t abel hasil dekom posisi hanya m em iliki 1 KF saj a (KF M in im u m) karena j ika sebuah t abel m em iliki lebih dari 1 KF m aka t abel t ersebut bukan m erupakan t abel yang baik.
BAB IV
5.1. Lossless-Join Decomposition (Dekomposisi
Aman)
Lossless- Join Decom posit ion - > dekom posisi ( penguraian) t erhadap sebuah t abel dim ana 5. Normalisasi dengan Ketergantungan Fungsional
j ika t abel- t abel hasil dekom posisi kit a gabungkan kem bali dapat m enghasilkan t abel awal sebelum didekom posisi.
Lossy- Join Decom posit ion - > dekom posisi ( penguraian) t erhadap sebuah t abel dim ana j ika t abel- t abel hasil dekom posisi kit a gabungkan kem bali t idak dapat m enghasilkan kem bali t abel awal sebelum dekom posisi. Dekom posisi sepert i ini t idak diperbolehkan dalam proses Norm alisasi.
Tabel ABC dengan isinya berikut :
Cont oh abst rak yang m enghasilk an Lossy- Join Decom posit ion :
A B C
a1 100 c1
a2 200 c2
a3 300 c3
a4 200 c4
Tabel ABC dengan isinya berikut :
A ÆB
B ÆC
5.1. Lossless-Join Decomposition (Dekomposisi
Aman)
Karena ada 2 KF di t abel diat as m aka t ent unya harus dilakukan dekom posisi, m enj adi 2 buah t abel ( t abel AB dan t abel BC) : disebut Lossy- Join Decom posit ion
BAB IV
5.1. Lossless-Join Decomposition (Dekomposisi
Aman)
5. Normalisasi dengan Ketergantungan Fungsional
Cont oh abst rak yang m enghasilk an Lossless- Join Decom posit ion : Jika dat a pada baris ke- 4 pada t abel ABC awal t adi, digant i dengan dat a berikut : kedua KF dapat dibenarkan, yait u :
a4 200 c2 B ÆC t abel ABC didekom posisi
Kalau kedua t abel disam ping digabung kem bali, m aka t abel ABC akan diperoleh kem bali sepert i diat as, m aka dekom posisi t er sebut
m erupakan D e k om posisi
BAB IV
5.2.
Dependency Preservation
(Pemeliharaan
Ketergantungan)
5. Normalisasi dengan Ketergantungan Fungsional
Dependency Preservat ion - > krit eria dim ana ket ika kit a m elakukan perubahan dat a, m aka harus bisa dij am in agar perubahan t ersebut t idak m enghasilkan inkonsist ensi dat a yang j g p g y g m engakibat kan KF yang sudah benar m enj adi t idak t erpenuhi
nama_kul nim nama_mhs indeks_nilai
Struktur Data 980001 I Made Suta A
Struktur Data 980002 I Wayan Sura B
Basis Data 980001 I Made Suta
Basis Data 980004 Dewi Asih
Basis Data 980002 I Wayan Sura
Tabel Nilai
Algoritma 980002 I Wayan Sura C … baris 6
nama_kul nim Æ indeks_nilai nim Ænama_mhs
Dengan dat a di t abel Nilai diat as m aka kedua KF nya, yait u :
Jika ada perubahan nilai at ribut nam a_m hsdi t abel Mahasiswa, m aka perubahan ini harus dij alarkan ke at ribut nam a_m hsdi t abel Nilai
5.2.
Dependency Preservation
(Pemeliharaan
Ketergantungan)
5. Normalisasi dengan Ketergantungan Fungsional
Jika penj alaran perubahan ini hanya dilakukan pada sat u baris dat a ( row) pert am a di t abel Nilai dengan nilai nim yang sam a dengan nilai nim di t abel Mahasiswa yang BAB IV
di t abel Nilai dengan nilai nim yang sam a dengan nilai nim di t abel Mahasiswa yang nam a_m hsnya diubah t ersebut , m aka KF nimÆnam a_m hs t idak t erpenuhi lagi
Solusi t erbaik agar kit eria Dependency Preservat ion t erpenuhi adalah dengan m eniadakan/ m elepaskan at ribut nam a_m hsdari t abel Nilai
Sehingga t abel Nilai hanya berisi 3 buah at ribut yait u : nam a_kul, nim , indeks_nilai
5.3.
Boyce-Codd Normal Form
(BCNF)
Krit eria berikut nya unt uk m endapat kan t abel yang baik adalah dengan m enerapkan
Boyce - Code N or m a l For m ( BCN F)
Boyce - Code N or m a l For m ( BCN F)
Sebuah t abel dikat akan t elah m em enuhi krit eria BCNF, j ika unt uk sem ua KF dengan not asi X ÆY , m aka X harus m erupakan super keypada t abel t ersebut .
Jika t idak dem ikian, m aka t abel t ersebut harus didekom posisi berdasarkan KF yang ada, sedem ikian hingga X m enj adi super keydari t abel- t abel hasil dekom posisi.
Tabel universal yang m erupakan rangkum an dari dat a m ahasiswa, dosen, kuliah, nilai dan j adual, m aka j elas t idak m em enuhi krit eria BCNF
Bukt inya :
salah sat u KF yang ada yait u : nim Ænam a_m hs alam at _m hs t gl_lahir seharusnya nim m erupakan superkey di t abel t ersebut
seharusnya nim m erupakan superkey di t abel t ersebut .
Nam un nim pada t abel universal t ersebut t idak unik m aka t abel universal t ersebut harus didekom posisi.
Dekom posis Am an yang dapat kit a lakukan pada t abel universal t ersebut adalah dengan m em ilah berdasarkan KF m inim um yang t elah dit ent ukan sebelum nya
BAB IV
5.3.
Boyce-Codd Normal Form
(BCNF)
5. Normalisasi dengan Ketergantungan Fungsional
4 buah KF m inim um pada t abel t ersebut :
nim Ænama_mhs alamat_mhs tgl_lahir
kode_kul Ænama_kul sks semester waktu tempat nama_dos nama_dos Æalamat_dos
nim, kode_kul Æindeks_nilai
Dengan berdasarkan keem pat KF di at as, m aka t abel universal it u didekom posisi m enj adi 4 buah t abel, yait u :
1. Tabel Mahasiswa dengan at ribut nim , nam a_m hs, alam at _m hs dan t gl_lahir
2. Tabel Kuliah dengan at ribut kode_kul, nam a_kul, sks, sem est er, w akt u, t em pat dan dosen
t em pat , dan dosen
3. Tabel Dosen dengan at ribut nam a_dos dan alam at _dos
Pengisian dat a ke m asing- m asing t abel hasil dekom posisi t ersebut harus m em perhat ikan keunikan baris dat a nya ( j ika ada beberapa baris dat a yang isi keseluruhan dat anya sam a pada t abel universal t ersebut cukup dinyat akan dalam sat u baris dat a saj a pada t abel hasil dekom posisinya)
BAB IV
5.3.
Boyce-Codd Normal Form
(BCNF)
5. Normalisasi dengan Ketergantungan Fungsional
Tabel- t abel hasil dekom posisi t ersebut yait u :
1. Tabel Mahasiswa
Tabel ini t elah m em enuhi BCNF karena pada krit eria BCNF sisi kiri ( X) dalam KF harus m erupakan super keydalam t abel
nim nama_mhs alamat_mhs tgl_lahir
980001 I Made Suta Jl. Dewi Sartika No.12, Bangli 40121 12/5/1980
980002 I Wayan Sura Jl. Kartini No.10, Badung 45123 3/6/1980
980004 Dewi Asih Jl. A Yani 5, Gianyar 40124 11/8/1980
harus m erupakan super keydalam t abel.
Mem ang benar dem ikian bahwa at ribut nim m erupakan superkey ( bahkan bisa m enj adi prim ary key) dari t abel Mahasiswa t ersebut diat as.
BAB IV
5.3.
Boyce-Codd Normal Form
(BCNF)
5. Normalisasi dengan Ketergantungan Fungsional
2. Tabel Kuliah
k d k l k l k kt t t d
kode_kul nama_kul sks semes ter
waktu tempat nama_dos
INF1014 Struktur Data
3 1 Senin, 08.00 – 09.40 dan Kamis, 11.00 – 11.50
Ruang A Ir. I Made Kondra
INF1012 Basis Data 3 2 Selasa, 10.00 – 11.40 dan Jum’at, 08.00 – 09.40
Ruang B Ir. I Made Kondra
INF2011 Algoritma 3 1 Rabu, 09.00 – 10.50 Ruang A Dewa Sujana, S.T., M.T
Tabel Kuliah hasil dekom posisi dari t abel universal disini t am pak m erupakan gabungan ant ara Tabel Kuliah dengan Tabel Jadual yg ada di Bab I I I gabungan ant ara Tabel Kuliah dengan Tabel Jadual yg ada di Bab I I I
KF t abel ini yait u :
kode_kul Ænam a_kul sks sem est er w akt u t em pat nam a_dos
5.3.
Boyce-Codd Normal Form
(BCNF)
3. Tabel Dosen
nama_dos alamat_dos
KF t abel ini yait u : nam a_dosÆalam at _dos
Tabel Dosen ini t elah m em enuhi krit eria BCNF, karena at ribut nam a_dos m em ang benar m erupakan superkey dari t abel Dosen
Ir. I Made Kondra Perum. Dosen Griya Sambangan, Jakarta 43111 Dewa Sujana, S.T., M.T Jl. Selamat No. 15, Bekasi 40121
4. Tabel Nilai
nim kode_kul indeks_nilai
980001 INF1014 A
980001 INF1014 A
980001 INF1012
980002 INF1014 B
980002 INF2011 C
980004 INF1012
KF t abel ini yait u : nim kode_kulÆ indeks_nilai
Tabel Nilai ini t elah m em enuhi krit eria BCNF, karena at ribut nim , kode_kul m em ang benar m erupakan superkey dari t abel Nilai
BAB IV
6. Bentuk-Bentuk Normal
(Normal Form)
yang Lain
Ket iga krit eria yang sudah dibahas sebelum nya, m erupakan krit eria m inim al unt uk m endapat kan prediksi efisien/ nor m al bagi sebuah t abel
Akan t et api kit a j uga m enerapkan krit eria- krit eria lain yang j uga t ercakup dalam kerangka Norm alisasi, walaupun bukan krit eria ut am a.
• Bent uk Norm al t ahap Pert am a (1st Norm al Form / NF)
• Bent uk Norm al t ahap Kedua (2nd Norm al Form / NF)
• Bent uk Norm al t ahap Ket iga (3rdNorm al Form / NF)
• Bent uk Norm al t ahap Keem pat (4t hNorm al Form / NF)
Krit eria- krit eria t ersebut adalah :
BAB IV
6.1. Bentuk Normal tahap Pertama (
1st Normal Form / NF
)
6. Bentuk-Bentuk Normal (Normal Form) yang Lain
Bent uk norm al 1NF t erpenuhi j ika sebuah t abel t ida k m e m ilik i At ribut Bernilai Banyak (Mult ivalued At t ribut e) at au lebih dari sat u at ribut dengan dom ain nilai yang sam a.
kode_kul nama_kul sks semes
Berikut ini Tabel Kuliah hasil dekom posisi dari t abel universal :
Tabel Kuliah diat as t idak m em enuhi Bent uk Norm al t ahap Pert am a, karena t erdapat at ribut w akt uyang t ergolong ke dalam Mult ivalued At t ribut e
Jika st rukt ur t abel Kuliah diat as diubah sehingga at ribut nya bert am bah, m isalnya at ribut w akt u di pilah ke sub at ribut w akt u1, w akt u2, dan set erusnya, j uga belum m em enuhi 1NF karena at ribut wakt u1 dan wakt u2 m em iliki dom ain nilai yang sam a
BAB IV
6.1. Bentuk Normal tahap Pertama (
1st Normal Form / NF
)
6. Bentuk-Bentuk Normal (Normal Form) yang Lain
Solusi agar Tabel Kuliah diat as m em enuhi 1NF adalah dengan m endekom posisinya m enj adi :
t abel Kuliah
t abel Kuliah (kode_kul, nam a_kul, sks, sem est er, nam a_dos)
t abel Jadual (kode_kul, w akt u, t em pat)
INF2011 Algoritma 3 1 Dewa Sujana, S.T., M.T
INF1014 Kamis, 11.00 – 11.50 Ruang A INF1012 Selasa, 10.00 – 11.40 Ruang B INF1012 Jum’at, 08.00 – 09.40 Ruang B INF2011 Rabu, 09.00 – 10.50 Ruang A
6.2. Bentuk Normal tahap Kedua (
2nd Normal Form / NF
)
2NF t erpenuhi j ika :• Sem ua at ribut selain prim ary keySem ua at ribut selain prim ary key, secara ut uh m em iliki secara ut uh m em iliki Ket ergant ungan Fungsional pada prim ary key
• Sebuah t abel t idak m em enuhi 2NF, j ika ada at ribut yang
Ket ergant ungan Fungsionalnya hanya bersifat parsial saj a ( hanya t ergant ung pada sebagian dari prim ary key)
Tabel Mahasiswa, Kuliah, Dosen, dan Nilai hasil dekom posisi dari t abel universal yang sudah disebut kan pada bagian 5.3, t elah m em enuhi 2NF
Cont oh pelanggaran 2NF : Cont oh pelanggaran 2NF :
Pada t abel Nilai prim ary keynya (kode_kul, nim) , dit am bahkan at ribut baru nam a_m hs, penam bahan at ribut t ersebut m enyebabkan adanya KF yg baru nim Æ nam a_m hs. Karena at ribut nam a_m hs ini hanya m em iliki ket ergant ungan parsial pada prim ary keysecara ut uh, m aka akan m elanggar 2NF
BAB IV
6.3. Bentuk Normal tahap Ketiga (
3rd Normal Form / NF
)
6. Bentuk-Bentuk Normal (Normal Form) yang Lain
3NF t erpenuhi j ika :
Unt uk set iap KF ( Ket ergant ungan Fungsional) dengan not asi X g g g g ÆA, m aka: - X haruslah m enj adi superkey pada t abel t ersebut ,
- At au A m erupakan bagian dari prim ary key pada t abel t ersebut
Cont oh : Jika karena suat u kebut uhan, at ribut alam at _m hs ( yang t ergolong At ribut Kom posit ) pada t abel Mahasiswa dipilah m enj adi 3 at ribut yait u : alam at _j ln, nam a_kot a dan kode_pos
nim nama_mhs alamat_jln nama_kota kode_pos tgl_lahir
980001 I Made Suta Jl. Dewi Sartika No.12 Banglig 40121 12/5/1980/ /
980002 I Wayan Sura Jl. Kartini No.10 Badung 45123 3/6/1980
980004 Dewi Asih Jl. A Yani 5 Gianyar 40124 11/8/1980
Dari t abel Mahasiswa diat as m aka akan ada KF baru yang m uncul yait u :
BAB IV
6.3. Bentuk Normal tahap Ketiga (
3rd Normal Form / NF
)
6. Bentuk-Bentuk Normal (Normal Form) yang Lain
Pem isahan at ribut alam at _m hs pada t abel Mahasiswa m enj adi 3 sub at ribut yait u alam at j ln, nam a kot a dan kode pos, m aka selain t idak m em enuhi
y _j , _ _p ,
krit eria BCNF j uga t idak m em enuhi 3NF, karena :
• alam at _j ln, nam a_kot a bukanlah superkey dari t abel Mahasiswa t sb • kode_pos j uga bukan m erupakan bagian dari prim ary key dari t abel
Mahasiswa t sb
Karena adanya KF baru pada t abel Mahasiswa yait u : alam at _j ln nam a_kot a Ækode_pos, m aka perlu didekom posisi m enj adi t abel Mahasiswa dan t abel Alam at .
t b l M h i t abel Alam at
t abel Mahasiswa t abel Alam at
BAB IV
6.3. Bentuk Normal tahap Ketiga (
3rd Normal Form / NF
)
6. Bentuk-Bentuk Normal (Normal Form) yang Lain
Pada t abel Alam at t erbent uk KF berikut : alam at j ln nam a kot a
Æ
kode pos alam at _j ln nam a_kot aÆ
kode_pos kode_posÆ
nam a_kot aDengan adanya KF yang t erbent uk pada t abel Alam at diat as m aka :
Terpenuhi BCNF pada t abel Mahasiswa dan pada t abel Alam at
Terpenuhi 3 NF pada t abel Alam at , dim ana :
• Pada KF pert am a, alam at _j ln, nam a_kot a m erupakan superkey ( sekaligus prim ary key pada t abel Alam at t sb)
• Pada KF kedua, kendat i kode_pos bukan m erupaka superkey, t et apinam a kot a m erupakan bagian dari prim ary key dari t abel t et apinam a_kot a m erupakan bagian dari prim ary key dari t abel Alam at