Normalisasi - Dini Tri Wardani

advertisement
Alat Bantu Perancangan Basis Data (Normalisasi)
2.1 Pengertian
Normalisasi adalah suatu proses memperbaiki/membangun data dengan model data
relasional dansecara umum lebih tepat di koneksikan dengan data model logical.
Normalisasi adalah proses pengelompokan data ke dalam bentuk tabel atau relasi atau
file untuk menyatakan entitas dan hubungan mereka, sehingga terwujud satu bentuk basis
data yang mudah untuk di modifikasi
Normalisasi adalah suatu proses untuk mengidentifikasi tabel kelompok atribut yang
memiliki ketergantungan sangat tinggi antara satu atribut dengan aribut lainnya.
Normalisasi bisa di sebut juga sebagai proses pengolompokan atribut-atribut dari
suatu relasi sehingga membentuk “Well Stuructured Relation”.
Well Stuructured Relation adalah sebuah relasi yang kerangkapan datanya sedikit
(Minimum Amount Of Redudancy), serta memberikan kemungkinan bagi pemakai untuk
melakukan insert, Delete, Modify terhadap baris-baris data pada relasi tersebu,yang tidak
berakibat terjadinya error atau inconsistency data yang disebabkan oleh operasioperasiyang di berikan oleh pemakai.
2.2 Tujuan Dilakukan Normalisasi
Adapun tujuan dilakukan normalisasi yaitu :
1) Database akan mudah untuk diakses dan dikelola,
2) Akan menghemat space/ruang dalam komputer karena update data yang disimpan
dalam
database dilakukan dengan operasi yang minimum dan menghindari
reduncancy data, dan ini juga berarti menghemat ‘cost’.
3) Menghindari problem-problem update anomalies terhadap data yang disimpan
dalam database sehingga terhindar dari inkonsistensi data.
4) Menghilangkan kerangkapan pada data/ redudansi.
5) Mengurangi kompleksitas.
6) Mempermudah pemodifikasian data.
7) Menghilangkan anomali data.
2.3 Functional Denpendensy
Functional Dependency (FD) ialah suatu ketergantungan relasi yang terjadi antara
atribut dlam tabel atau set entity dengan atribut lain. FD menggambarkan suatu relationship/
hubungan, batasan, keterkaitan diantara atribut dlam relasi.
Basis data yang baik hanya terdapat 1 ketergantungan fungsional dalam 1 entity/label,
disebut dengan Basis Data Normal. Simbol yang digunakan dalam FD adalah à , yang artinya
secara fungsional menentukan.
Notasi Dalam FD
1.
Notasi FD: A => B
Maksudnya yaitu A dan B adalah atribut dari suatu tabel. Jadi secara fungsional A
menentukan B atau B tergantung dari A, jika dan hanya jika ada 2 basis data
dengan nilai yag sama maka nilai B juga akan sama.
2.
Notasi: A X=> B
Artinya yaitu kebalikan dari notasi sebelumnya.
Contoh:
NamaKul
Nrp
NamaMhs
NiHuruf
Struktur Data
12345
Nuril Utami
A
Struktur Data
12346
Sekar Sari
B
Basis Data
12345
Nuril Utami
B
Basis Data
12346
Sekar Sari
A
Keterangan dari FD diatas:
1. Nrp => NamaMhs
Karena untuk setiap nilai Nrp ynag sama, maka nilai NamaMhs juga akan
sama.
2. {NamaKul, Nrp} => NiHuruf
Karena atribut Nihuruf tergantng pada NamaKul dan Nrp secara bersamasama. Atau NamaKul & Nrp ynag sama, mka NiHuruf juga akan sama, sebab
NamaKul dan Nrp merupakan key yang bersifat unik.
3. NamaKul X => Nrp
4. Nrp => NiHuruf
2.4 Jenis- jenis Dependency
1.
Full functional Dependency
Yaitu jika ada atribut A dan B dalam suatu relasi, dimana B memiliki
keterantungan fungsional secara penuh terhadap A dan B bukan memiliki
dependensi terhadap subset A.
2.
Partially Dependency
Yaitu jika terdapat beberapa atribut yang dapat dihilangkan dari A dengan
ketergantungan tetap dipertahankan dan B memiliki dependensi terhadap
subset A.
3.
Transitive Dependency
Yaitu dimana A,B, C adalah atribut dari sebuah relasi A=> B dan B => C, jadi
bisa dikatakan kalau C sebagai transitive dependency terhadap A melalui B.
2.5 Aturan-aturan dalam Ketergantungan Fungsional
Jika A, B , C merupakan himpunan atribut pada sebuah relasi R, ada beberapa sifat
yang disebut Axioma Amstrong (sifat-sifat untk normalisasi) , yaitu:
* Aksioma Reflexity: Jika B merupakan bagian subset A, maka A => B.
* Aksioma Augmentasi: Jika A => B, maka AC => BC.
* Aksioma Transitifity: Jika A => B dan B => C, maka A =>C .
Dari aturan-aturan diatas dapat dibuat aturan-aturan turunan sebagai berikut:
Union
: Jika A => B dan A => C, maka A => BC,
Dekomposisi
: Jika A =>BC , maka A => B dan A => C,
Peseudo Transitifity : Jika A => B dan BC => D, maka AC => D,
2.6 Bentuk – bentuk Normalisasi
Bentuk normal suatu relasi bisa sampai ke tingkat lima 5NF, yaitu 1NF – 2NF –
3NF/BCNF – 4NF – 5NF.Tetapi secara praktik dalam dunia nyata, relasi dalam suatu
database sudah dibilang baik kalau sudah mencapai 3NF (bentuk normal ketiga).
1) Normal Form
Data yang direkam dan dimasukkan secara mentah dalam suatu tabel pada bentuk
ini sangat mungkin terjadi inkonsistensi dan anomali data.Pada bentuk ini ada
beberapa ciri ciri yang penting, yang pertama adalah akan terjadi anomali dalam
insert, update, dan delete. Hal ini menyebabkan beberapa fungsi DML dalam
SQL tidak dapat berjalan dengan baik. Sebagai contoh jika ingin menghapus
penerbit maka data judul buku akan ikut terhapus begitu juga jika ingin
menghapus peminjam, maka data penerbit dan buku yang harusnya tidak terhapus
akan ikut hilang.
2) Normal Form (1NF)
Bentuk normal yang pertama atau 1NF mensyaratkan beberapa kondisi dalam
sebuah
database,
berikut
adalah
fungsi
dari
bentuk
normal
pertama
ini.Menghilangkan duplikasi kolom dari tabel yang sama.Buat tabel terpisah
untuk masing-masing kelompok data terkait dan mengidentifikasi setiap baris
dengan kolom yang unik (primary key).Pada intinya bentuk normalisasi 1NF ini
mengelompokkan beberapa tipe data atau kelompok data yang sejenis agar dapat
dipisahkan sehingga anomali data dapat di atasi. Contoh adalah ketika kita ingin
menghapus, mengupdate, atau menambahkan data peminjam, maka kita tidak
bersinggungan dengan data buku atau data penerbit.Sehingga inkonsistensi data
dapat mulai di jaga.
3) Second normal form (2NF)
Syarat untuk menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk
dalam 1NF, berikut adalah beberapa fungsi normalisasi 2NF.Menghapus
beberapa subset data yang ada pada tabel dan menempatkan mereka pada tabel
terpisah.Menciptakan hubungan antara tabel baru dan tabel lama dengan
menciptakan foreign key.Tidak ada atribut dalam tabel yang secara fungsional
bergantung pada candidate key tabel tersebut.Contoh di atas kita menggunakan
tabel bantuan yaitu tabel transaksi, pada intinya bentu kedua ini adalah tidak
boleh ada field yang berhubungan dengan field lainnya secara fungsional. Contoh
Judul Buku tergantung dengan id_Buku sehingga dalam bentuk 2NF judul buku
dapat di hilangkan karena telah memiliki tabel master tersendiri.
4) Third Normal Form (3NF)
Normalisasi database dalam bentuk 3NF bertujuan untuk menghilangkan seluruh
atribut atau field yang tidak berhubungan dengan primary key.Dengan demikian
tidak ada ketergantungan transitif pada setiap kandidat key. Syarat dari bentuk
normal ketiga atau 3NF adalah :
A.Memenuhi semua persyaratan dari bentuk normal kedua.
B.Menghapus kolom yang tidak tergantung pada primary key.
2.7 Kesimpulan
Teknik normalisasi adalah proses pengelompokan data element menjadi tabel-tabel yang
entitydan relasi. Proses pembentukan tabel normal penuh (normalisasi)bertujuan untuk:
1. Membuat sekecil mungkin terjadinya data rangkap
2. Menghindari data yang tidak konstan terutama bila dilakukan penambahan dan
penghapusan data sebagai akibat adanya data rangkap
3. Menjamin bahwa identitas tabel secara tunggal sebagai determinan semua atribut
Proses normalisasi juga digunakan pada beberapa operasi yang berhubungan dengan data
record yaitu:
1. Operasi penambahan (insert)
2. Operasi penghapusan (delete)
3. Operasi pengubahan (update)
4. Operasi pembacaan data
Apabila terjadi kesulitan saat proses data maka tabel-tabel di pecahkan menjadi beberapa
tabel yang merupakan hasil pengolompokan data berdasarkan entiti masing-masing.Syarat
dalam melakukan normaliasi
1. Adanya field (attribute kunci)
2. Berdasarkan kepada ketergantungan fungsi
Download