Selasa, 04 November 2014

PRAKTIKUM DESAIN BASIS DATA 6



Praktikum Desain Basis data 6
Normalisasi
Menggunakan Microsoft Excel
Landasan Teori

Pada pembahasan kali ini, kita akan membahas tentang normalisasi. Apa itu normalisasi? Apa tujuannya? Dan bagaimana caranya? Berikut sedikit cuplikannya.....

Ada beberapa definisi dari normalisasi, yaitu normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel-tabel  untuk memenuhi kebutuhan pemakai di dalam suatu organisasi atau sebuah teknik dalam logical desain sebuah basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi). Normalisasi  dapat juga didefinisikan sebagai proses pembentukan struktur basis data sehingga sebagian besar  anomali bisa dihilangkan.

Anomali adalah proses pada basis data yang memberikan efek samping yang tidak di harapkan, seperti menyebabkan ketidak konsistenan data atau membuat suatu data menjadi hilang ketika data lain di hapus.

Macam-macam anomali:
1. anomali peremajaan/edit/update
2. anomali penyisipan/insert
3. anomali penghapusan/delete

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. Tujuan dari normalisasi itu sendiri yaitu :
          Untuk menghilang kerangkapan data
          Untuk mengurangi kompleksitas
          Untuk mempermudah pemodifikasian data

Ada beberapa bentuk normalisasi, yaitu :            
  1. Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)
  2. Bentuk Normal Tahap Kedua (2nd Normal Form / 2NF)
  3. Bentuk Normal Tahap (3rd Normal Form / 3NF)
  4. Boyce-Code Normal Form (BCNF)
  5. Bentuk Normal Tahap (4th Normal Form / 4NF)
  6. Bentuk Normal Tahap (5th Normal Form / 5NF)

Proses normalisasi yaitu data diuraikan dalam bentuk tabel, selanjutnya  dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat. Apabila tabel yang diuji belum memenuhi persyaratan tertentu, maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

Ada 3 kriteria Sebuah tabel dikatakan baik (efisien) atau normal, yaitu :
  1. Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless-Join Decomposition). Maksudnya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
  2. Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).
  3. Tidak melanggar Boyce-Codd Normal Form (BCNF)
Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggar Bentuk Normal  tahap ketiga (3rd Normal Form / 3NF).

Tahap Normalisasi dimulai dari tahap paling ringan yaitu 1NF  hingga paling ketat yaitu 5NF. Tapi biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik.

Berikut urutan tahapannya :

Bentuk Tidak Normal (Unnormalization)

 

Bentuk Normal Pertama (1NF)





Bentuk Normal Kedua (2NF)



 

Bentuk Normal Ketiga (3NF)



 

Bentuk Normal Boyce-Codd (BCNF)


Bentuk Normal Keempat (4NF)



  

Bentuk Normal Kelima (5NF)



                Sedikit penjelasan tentang tahapan tersebut adalah sebagai berikut :
    1.      Unnormalization Form (UF)
Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan mengikukti format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat menginput.
Untuk mentransformasikan tabel yang belum ternomalisasi di atas menjadi tabel yang memenuhi kriteria 1NF adalah kita harus merubah seluruh atribut yang multivalue menjadi atribut single value, dengan cara menghilangkan repeating group

    2.   1NF
Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang agar menjadi satu harga tunggal yang berinteraksi di antara setiap baris pada suatu tabel, dan setiap atribut harus mempunyai nilai data yang atomic (bersifat atomic value). Maksudnya atom adalah zat terkecil yang masih memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat induknya.
Syarat 1NF adalah sebagai berikut :
1. setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai dari field berupa “atomic value”.
2. tidak ada set atribute yang berulang atau bernilai ganda.
3. telah ditentukannya primary key untuk tabel / relasi tersebut.
4. tiap tribut hanya memiliki satu pengertian.


    3.   2NF
Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut. Jika A adalah atribut-atribut dari suatu relasi, B dikatakan full functional dependency (memiliki ketergantungan fungsional terhadap A, tetapi tidak secara tepat memiliki ketergantungan fungsional dari subset (himpunan bagian) dari A.
Pada 2NF haruslah sudah ditentukan kunci field yang unik dan dapat mewakili atribut lain yang menjadi anggotanya.
Syarat dari 2NF adalah sebagai berikut :
1. Bentuk data telah memenuhi kriteria bentuk normal kesatu (1NF).
2. Atribute bukan kunci (non-key) haruslah memiliki ketergantungan fungsional sepenuhnya (fully functional dependency) pada kunci utama / primary key.


     4.    3NF
Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF, namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly update terhadap relasi tersebut.
Pada 3NF semua atribut bukan primer tidak punya hubungan yang transitif. Dengan kata lain setiap atribut bukan kunci, haruslah bergantung hanya pada primary key dan pada primary key secara menyeluruh.
                                Adapun syarat dari 3NF yaitu :
1. Bentuk data telah memenuhi kriteria bentuk normal kedua.
2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu saja.


     5.   BCNF
BCNF memiliki paksaan yang lebih kuat dari bentuk 3NF. Untuk menjadi BCNF, relasi haruslah dalam bentuk 1NF dan setiap atribut harus bergantung fungsi pada atribut super key.

Sejauh mana normalisasi harus dilakukan? pertanyaan ini sering kali muncul ketika kita akan melakukan normalisasi. Pada dasarnya, kita harus terus melakukan langkah-langkah normalisasi sehingga kita tidak menemukan anomali-anomali. Pada umumnya, normalisasi hingga 3NF saja sudah cukup untuk menghilangkan anomali-anomali. Tetapi tanpa sadar kadang kita melangkah terus hingga BCNF, 4NF dan 5NF. Tidak ada standar baku sampai sejauh mana kita perlu melaksanakan langkah-langkah normalisasi. Prinsipnya, lakukan normalisasi hingga anomali-anomali tidak di temukan lagi.

Hasil praktikum


Untuk me-normalisasikan soal  di atas, langkah pertama yaitu dengan unnormalization seperti gambar di bawah ini hasilnya :
Sesudah itu, kita mulai dengan 1NF. Berikut gambarnya :

Sesudah 1NF-kan, kemudian 2NF. Berikut gambarnya :

2NF selesai. Sekarang penambahan-penambahannya yaitu pada 3NF. Berikut gambarnya :

Dan cukup 3NF untuk normalization kali ini.

Pekerjaan rumah

Pada pekerjaan rumah, langkah-langkahnya sama saja dengan tugas praktikum. Soalnya yaitu pada gambar di bawah ini :
Berikut gambar langkah-langkahnya :
Unnormalization form

1NF

2NF

3NF

Kesimpulan
                Dari hasi praktikum dan pekerjaan rumah, dapat disimpulkan bahwa normalisasi dilakukan agar tidak ada kerangkapan data, meminimalisis kompleksitas pada data dan untuk memudahkan untuk memodifikasi data. Langkah untuk menormalisasi di mulai dari meng-unnormaliztion, 1NF, 2NF, 3NF, BCNF, 4NF dan yang paling ketat yaitu 5NF. Tetapi pada umumnya, normalisasi dilakukan hanya sampai 3NF atau BCNF karena tidak ada standar baku yang membatasi.
                Pada intinya, normalisasi dilakukan sampai anomali-anomali tidak di temukan lagi.

Kritik /Saran
                Ilmu yang tidak di amalkan bagai pohon yang tak berbuah, itulah kata pepatah. Begitu juga Ilmu dari para senior di harapkan untuk di amalkan sebagai kritik dan saran agar blog ini semakin bermanfaat.
                Semoga coretan di atas memberikan manfaat dan sedikit pandangan kepada pada pembaca. Tidak pernah bosan, saya mengingatkan untuk berdoa terlebih dahulu. Terima kasih. ^_^

Daftar Pustaka

normalisasi-data.pdf

Tidak ada komentar:

Posting Komentar