Partono, M.Kom
Normalisasi
Normalisasi merupakan teknik analisis data yang mengorganisasikan atribut-atribut data dengan cara mengelompokkan sehingga terbentuk entitas yang nonredundant, stabil, dan fleksible Normalisasi dilakukan sebagai uji coba pada suatu relasi secara berkelanjutan untuk menentukan apakah relasi itu sudah baik, yaitu dapat dilakukan proses insert,update,delete, dan modifikasi pada satu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut.
Bentuk Normal ke Satu(1NF) Syarat : 1. Tidak ada set atribut yang berulang atau bernilai ganda. 2. Telah ditentukannya primary key untuk tabel atau relasi. 3. Tiap atribut hanya memiliki satu pengertian. Tiap atribut yang dapat memiiki banyak nilai sebenarnya menggambarkan entitas atau relasi yang terpisah. Bentuk Normal ke Dua(2NF) Syarat : 1. Bentuk data telah memenuhi kriteria bentuk normal ke satu. 2. Atribut bukan kunci(non-key attribute) haruslah memiliki ketergantungan fungsional sepenuhnya pada primary key.
Bentuk Normal ke Tiga(3NF) Syarat : 1. Bentuk data telah memenuhi kriteria bentuk normal ke dua. 2. 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.
Contoh Normalisasi :
Diberikan tabel Mahasiswa di bawah ini, akan dilakukan normalisasi sampai bentuk normal ke tiga
Contoh (1)
Bentuk Normal ke dua(2NF) :
Belum memenuhi kriteria 3NF, Karena atribut non-key Nilai dan Bobot masih memiliki ketergantungan fungsional.
Contoh (2)
Bentuk Normal ke tiga(3NF) :
Untuk melakukan normalisasi, harus bisa menentukan terlebih dahulu Functional Dependency (FD) atau Ketergantungan Fungsional, khususnya dalam melakukan dekomposisi rancangan database. Functional Dependency (FD) dapat disimbolkan dengan: A B : artinya B memiliki ketergantungan dengan A Berarti A secara fungsional menentukan B atau B secara fungsional tergantung pada A.
Functional Dependency: NRP Nama Mata_Kuliah, NRP Nilai Non Functional Dependency: Mata_Kuliah NRP NRP Nilai
NORMALISASI 1NF
1st Normal Form (1NF) Merubah dari bentuk tabel tidak normal (unnormalized table) menjadi bentuk normal (1NF). Suatu relasi R disebut 1st NF jika dan hanya jika kondisi tablenya dari unnormalized dirubah ke bentuk normal dengan kondisi semua attribute value-nya harus atomic (tidak boleh ada attribute yang composit / multivalue)
b)
Tabel dibawah adalah tabel siswa mengambil mata kuliah SISWA Elemen datanya memungkinkan untuk null value (kosong) Contoh : Tabel yang mencatat No. SIM yang dimiliki siswa SISWA_SIM
tabel dikatakan berada pada bentuk normal I jika ia tidak berada pada bentuk unnormalized table, dimana terjadi penggandaan field yang sejenis dan memungkinkan ada field yang null (kosong)
SISWA
SIM
NORMALISASI 2NF
2st Normal Form (2NF)
Normalisasi
2NF: jika tabel berada dalam bentuk Normal Pertama (1NF) dan setiap atribut bukan kunci bergantung penuh pada kunci primer. Sehingga tidak ada atribut bukan kunci yang bergantung pada sebagian (parsial) kunci primer.
kriteria tabel Normal I (1NF) Di dalam tabel tersebut tidak ada Redundansi / Pengulangan data dan Null Value. Field-field yang bukan PK adalah Full Dependent (bergantung penuh) pada PK.
Contoh 2NF:
Ilustrasi 2NF
NORMALISASI 3NF
relasi R disebut normal III (3rd NF) jika berada dalam bentuk normal II (2nd NF) dan tidak dijumpai adanya ketergantungan transitif (Transitive Dependency). Kebergantungan Transitif (Transitive Dependency) adalah ketergantungan fungsional antara 2 (atau lebih) atribut bukan key (kunci).
Syarat 3NF
Harus
berada dalam bentuk normal II (2NF). Ketergantungan field-field yang bukan PK adalah harus secara mutlak (fulldependent). Artinya harus tidak ada transitive dependency (ketergantungan secara transitif).
Contoh 3NF:
Bentuk Normal ke Dua (2NF) : Tabel di samping sudah masuk dalam bentuk Normal 2. Akan tetapi kita lihat bahwa field Nama dan Nilai adalah FullDependent terhadap NRP yang bertindak sebagai PK. Berbeda dengan field Keterangan di atas yang Dependent kepada NRP akan tetapi Tidak Mutlak. Ia lebih dekat ketergantungannya dengan field Nilai. Karena field Nilai Dependent kepada NRP dan field Keterangan Dependent kepada Nilai, maka field Keterangan juga dependent kepada NRP. Ketergantungan yang demikian ini yang dinamakan Transitive-Dependent (dependent secara transitif atau samar/tidak langsung). Untuk itu dilakukan Normalisasi III (3NF).
diambil dari form-form yang ada apa adanya, tidak ada ketentuan mengikuti bentuk tertentu Semua atribut/field di susun secara flat Periksa bagian yang memungkinkan adanya data bernilai ganda
Order No
Rep
FOB
QTY
Description
Unit Price
Total
Subtotal
Shipping
Tax Rates
G_Total
Normal Form : Menghilangkan data bernilai ganda menjadi atomic value (bila ada) Bentuk ini di uji dengan memasukkan data ke bentuk tak normal, minimal 2 data
0002
PQR
Ddd
Eee
Ee
111
1121134
Rep 31 33
FOB 3 2
QTY 2 3 1
Unit Price 30 25 30
Total 60 75 30
Subtotal
135 30
Shipping 2 2
normal form : Tiap attribut bukan kunci harus bergantung fungsi ke attribut kunci Bergantung fungsi AB,C,D,E A adalah kunci, sedangkan B,C,D,E bergantung fungsi terhadap A Menjadikan pengelompokan dalam tabeltabel yang relevan
Diubah ke bentuk
Tabel Customer
Nm_Cust* Add_Cu st City_Cust State_Cust Zip Phone_Cust Date
Tabel Transaksi
Invoice No Order No Rep FOB QTY Code** Total Sub total Shipping Tax Rates G_Total Nm _Cu st **
Tabel Barang
Code* Description Unit Price
bentuk normal ke 2 untuk menghilangkan ketergantungan transitif Ketergantungan transitif AB,C,D,E CE C adalah trans untuk E dan A, maka harus di dekomposisi menjadi : AB,C,D dan CE
Slide credits
Harrismare Craig
S. Mullins Haryanto K.