Minggu, 02 Desember 2018

NORMALISASI DATA
1.     Definisi
      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 operasi-operasiyang di berikan oleh pemakai.


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

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 menentkan 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 bersama-sama. 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

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.

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, 
     
4.      Bentuk-Bentuk normalisasi beserta contohnya
            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. 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 :
Memenuhi semua persyaratan dari bentuk normal kedua.
Menghapus kolom yang tidak tergantung pada primary key.
Contoh Normalisasi Database Bentuk 3NF.
Bentuk SQL
SELECT ORDERID, HARGA, JUMLAH, TOTAL
FROM ORDER
Menjadi
SELECT ORDERID, HARGA*JUMLAH AS TOTAL
FROM ORDER
BCNF Boyce–Codd normal form
Merupakan sebuah teknik normalisasi database yang sering disebut 3.5NF, memiliki hubungan yang sangat erat dengan bentuk 3NF. Pada dasarnya adalah untuk menghandle anomali dan overlooping yang tidak dapat di handle dalam bentuk 3NF. Normalisasi database bentuk ini tergantung dari kasus yang disediakan, tidak semua tabel wajib di normalisasi dalam bentuk BCNF.

Tidak ada komentar:

Posting Komentar

phpMyAdmin Pengertian phpMyAdmin Phpmyadmin  adalah sebuah aplikasi open source yang berfungsi untuk memudahkan manajemen MySQ...