Endang B

1,120
-1

Published on

NORMALISASI DATABASE

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,120
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
51
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Endang B

  1. 1. Normalisasi <ul><li>A.Pengertian Normalisasi </li></ul><ul><li>>Berasal dari E.F Codd. Salah seorang perintis teknologi basis data. Kronke[4] mendefinisikan normalisasi sebagai proses untuk mengubah suatu relasi yang memiliki masalah tertentu ke dalam dua relasi atau lebih yang tak memiliki masalah tersebut. Masalah ini sering disebut dengan Anomali. </li></ul><ul><li>B. Anomali </li></ul><ul><li>Anomali adalah proses pada basis data yang memberikan efek samping yang tidak diharapkan (misalnya menyebabkan ketidakkonsistenan data atau membuat sesuatu data menjadi hilang ketika data yang lain dihapus ). </li></ul><ul><li>> Macam - macam Anomali : </li></ul><ul><ul><ul><li>1. Anomali Peremajaan. </li></ul></ul></ul><ul><ul><ul><li>2. Anomali Penghapusan. </li></ul></ul></ul><ul><ul><ul><li>3. Anomali Penyisipan. </li></ul></ul></ul>
  2. 2. B.1. Anomali Permajaan. Anomali ini terjadi bila terjadi pengubahan pada sejumlah data yang mubazir, tetapi tidak seluruhnya diubah. Sebagai contoh , terdapat relasi PESANAN _ Beli yang mengandung data PEMASOK dan KOTA yang menyatakan lokasi pemasok. Barang yang menyatakan nama barang dan jumlah barang yang dipesan. > Terlihat adanya ketidakkonsistenan . Fakta pertama menyatakan bahwa pemasok citra berlokasi di Bogor, tetapi fakta kedua menyatakan bahwa pemasok citra berada di Bandung . Mana yang benar ? Keadaan inilah yang menyatakan ketidakkonsistenan. B.2. Anomali Penyisipan. Anomali penyisipan terjadi jika pada saat penambahan hendak dilakukan ternyata ada elemen data yang masih kosong dan elemen data tersebut justru menjadi kunci. Sebagai contoh terdapat relasi yang berisi tiga buah atribut : 1. KULIAH 2. RUANG 3. TEMPAT
  3. 3. <ul><li>Relasi diatas menyatakan bahwa : </li></ul><ul><li>Kuliah menggunakan RUANG tertentu ( misalnya jaringan komputer menggunakan Ruang Merapi ). </li></ul><ul><li>Suatu RUANG berada pada TEMPAT tertentu ( misalnya ruang merapi terdapat pada gedung utara ). </li></ul><ul><li>B.3.Anomali Penghapusan </li></ul><ul><li>Anomali penghapusan terjadi sekiranya sesuatu baris ( Tupel ) yang terpakai dihapus dan sebagai akibatnya terdapat data lain yang hilang. </li></ul><ul><li>Sebagai contoh relasi KURSUS di depan, apa yang terjadi seandainya data bahwa siswa dengan identitas 20 yang mengambil kursus bahasa Jepang dihapus ? Data yang menyatakan bahwa kursus bahasa Jepang sebesar 65.000 juga akan terhapus ! </li></ul>
  4. 4. <ul><li>Dependensi ( Ketergantungan ) </li></ul><ul><li>  </li></ul><ul><li>       Merupakan konsep yang mendasari Normalisasi. Dependensi menjelaskan hubungan antaratribut, atau secaralebih khusus menjelaskan nilai suatu atribut yang menetukan nilai suatu atribut lainnya. </li></ul><ul><li>       Macam – macam Dependensi : </li></ul><ul><li>1.      Dependensi Fungsional </li></ul><ul><li>2.      Dependensi Fungsional sepenuhnya </li></ul><ul><li>3.      Dependensi Total </li></ul><ul><li>4.      Dpendensi Transitif </li></ul><ul><li>C.1.1. Dependensi Fungsional. </li></ul><ul><li>Dependensi Fungsional bisa didefinisikan sebagai berikut , suatu atribut Y mempunyai atribut dependensi fungsional terhadap X jika dan hanya jika setiap nilai berhubungan dengan nilai Y. </li></ul><ul><li>Notasi : X  Y ( Dibaca “ X secara fungsional menetukan Y “ atau cukup dibaca “ X panah Y “ ). </li></ul>
  5. 5.   Gambar 4.5 Relasi PESAN_JUAL. Pembeli Kota Barang Jumlah P1 Yogya B1 10 P1 Yogya B2 5 P2 Solo B1 7 P2 Solo B2 6 P2 Solo B3 6 P3 Klaten B3 7 P3 Klaten B4 6
  6. 6. Contoh : {PEMBELI, BARANG} JUMLAH {PEMBELI, BARANG} KOTA {PEMBELI, BARANG} {JUMLAH KOTA} Pada contoh ini, PEMBELI secara fungsional menetukan KOTA, sebab terlihat bahwa untuk PEMBELI yang sama, KOTA – nya juga sama. Dengan demikian : PEMBELI  KOTA { PEMBELI, BARANG }  JUMLAH Keterangan : 1.      Bagian yang terletak disebelah kiri panah biasa disebut penentu (Determinan) dan bagian yang terletak disebelah kanan panah di sebut yang tergantung ( Dependen ). 2.      Tanda {} biasa digunakan kalo ada lebih dari satu atribut, baik pada penentu maupun yang tergantung .
  7. 7. C.1.2. Dependensi Fungsional sepenuhnya. Definisi Dependensi Fungsional sepenuhnya adalah suatu atribut Y mempunyai dependensi fungsional penuh terhadap atribut X :    * Y mempunyai dependensi fungsional terhadap X. * Y tidak memiliki dependensi terhadap bagian dari X. Berkaitan dengan hal ini terdapat istilah irreducible dependent [3] atau dependensi yang tidak dapat dibagi lagi . Istilah ini identik dengan dependensi fungsional sepenuhnya atau terkadang hanya disebut dependensi sepenuhnya. C.1.3. Dependensi Total. Dependensi Total adalah suatu atribut Y mempunyai dependensi Total terhadap atribut X jika :  Y memiliki dependensi fungsional terhadap X.  X mempunyai dependensi fungsional terhadap Y. Notasi : X Y
  8. 8. Gambar 4.6 Relasi untuk memperlihatkan dependensi total Pada contoh ini : KODE_ PEMASOK NAMA_PEMASOK Dengan asumsi tidak ada nama pemasok yang sama. Kode Pemasok Nama Pemasok Kota K1 Kartika Jakarta C1 Citra Bandung C2 Candra Jakarta
  9. 9. C.1.4. Dependensi Transitif. Didefinisikan sbb : Atribut Z mempunyai dependensi transitif terhadap X bila :        Y memiliki dependensi fungsional terhadap X.        Z memiliki dependensi fungsional terhadap Y. Gambar 4.7 Contoh relasi yang menunjukan adanya dependensi transitif Terlihat bahwa : KULIAH  RUANG  TEMPAT Dengan demikian TEMPAT mempunyai dependensi transitif terhadap KULIAH. Kuliah Ruang Tempat Waktu Jaringan Komputer Merapi Gedung Utara Senin, 08:00-09:50 Matematika I Rama Gedung Selatan Selasa, 07:00-08:45 Sistem Pakar Sinta Gedung Selatan Rabu, 10:00-11:45 Fisika I Merapi Gedung Utara Selasa, 08:00-09:50
  10. 10. C.2. Diagram Dependensi Fngsional Diagram dependensi fungsional ( Diagram DF ) adalah diagram yang digunakan untuk menggambarkan dependensi fungsional. Diagram ini menunjukan hubungan antara atribut yang menjadi penentu atribut yang lainnya. Gambar 4.8 Contoh diagram Dependensi fungsional KULIAH RUANG RUANG TEMPAT
  11. 11. C.3. Dekomposisi Tak Hilang Pada Proses Normalisasi seringkali terjadi pemecahan sebuah relasi menjadi dua relasi atau lebih. Proses pemecahan seperti ini biasa disebut dengan istilah dekomposisi. Secara lebih khusus, macam dekomposisi yang dilakukan adalah dekomposisi tak hilang. Yang artinya bahwa tak ada informasi yang hilang ketika relasi dipecah menjadi relasi – relasi lain . Gambar 4.9 Memperlihatkan relasi dan dua macam Dekomposisi Bentuk Relasi Semula Nim Nama Program Studi 95001 Ali Ekonomi 95002 Edi Ekonomi 95003 Ali Fisika
  12. 12. Gambar 4.9 Contoh pendekomposisian relasi Nim Nama 95001 Ali 95002 Edi 95003 Ali Relasi : Nim_Nama Nama Program Studi Ali Ekonomi Edi Ekonomi Ali Fisika Relasi : Nim_Prog (a) Contoh dekomposisi tak hilang Nim Program Studi 95001 Ekonomi 95002 Ekonomi 95003 Fisika Relasi : Nama_Prog Nim Nama 95001 Ali 95002 Edi 95003 Ali Relasi : Nim_Nama (b) Contoh dekomposisi hilang
  13. 13. Pada dekomposisi diatas : 1.      Pada kasus (a), dekomposisi bersifat tak hilang. Berdasar hasil kedua relasi hasil dekomposisi ( terkadang disebut proyeksi ), relasi semula bisa diperoleh kembali. 2.      Pada kasus (b), terdapat suatu kerancuan. Nama yang bernomor 95001 memang betul adalah Ali ( Relasi : NIM_NAMA). Tetapi si Ali bernomor 95001 ini mengambil program studi EKONOMI atau FISIKA ( Relasi : NAMA_PROG ). Karena ada dua nama ALI ) ? Dekomposisi yang menghasilkan relasi NIM_NAMA dan NAMA_PROG merupakan dekomposisi hilang.
  14. 14. C.4. Bentuk Normal. Bentuk Normal adalah suatu aturan yang dikenakan pada relasi – relasi dalam basis data dan harus dipenuhi oleh relai – relasi tersebut pada level Normalisasi. Beberapa level yang sering digunakan dalam normalisasi adalah :        Bentuk Normal Pertama ( INF )        Bentuk Normal Kedua ( 2NF )        Bentuk Normal Ketiga ( 3NF )        Bentuk Normal Boyce-Codd ( BCNF )        Bentuk Normal Keempat ( 4NF )        Bentuk Normal Kelima ( 5NF )
  15. 15. Gambar 4.10 Bentuk-bentuk normal Relasi Umum 1NF 2NF 3NF 4NF 5NF BCNF
  16. 16. Gambar diatas mejelaskan bahwa setiap level normalisasi bergantung pada level sebelumnya. Semakin dalam levelnya, relasi mempunyai kecenderungan lebih baik. Dalam artian memiliki problem yang lebih kecil ataupun sama sekali tidak memiliki permasalahan Anomali. C.4.1. Bentuk Normal Pertama Definisi Normal Pertama ( data yang belum ternomalisasi ) adalah suatu relasi dikatakan dalam bentuk normal pertama jika dan hanya jika setiap atribut bernilai tunggal untuk setiap baris. Gambar 4.11 Contoh data belum ternormalisasi Nip Nama Jabatan Keahlian Lama ( tahun) 107 Ilham Analis Senior Cobol 6 Oracle 1 109 Rian Analis Yunior Cobol 2 Dbase 2 112 Fika Pemrogram Cobol 1 Dbase 1 Sybase 1
  17. 17. Bentuk semacam itu banyak dipakai oleh pengembang yang barangkali tidak mengenal konsep normalisasi. Sejumlah items ditulis berdiri sebagai kolom tersendiri. Relasi dalam bentuk pertama pada umumnya memiliki berbagai masalah. Masalah yang timbul secara umum disebabkan karena kemubaziran . <ul><li>C.4.2. Bentuk Normal Kedua </li></ul><ul><li>Bentuk normal kedua didefinisikan berdasarkan dependensi fungsional. </li></ul><ul><li>Suatu relasi berada dalam bentuk normal kedua jika dan hanya jika : </li></ul><ul><li>       Berada dalam bentuk normal pertama. </li></ul><ul><li>       Semua atribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci </li></ul><ul><li>primer. </li></ul><ul><li>Atribut bukan kunci adalah atribut yang tidak merupakan bagian kunci primer. </li></ul><ul><li>Untuk mengubah relasi bentuk normal pertama ke bentuk normal kedua perlu </li></ul><ul><li>dilakukan dekomposisi terhadap relasi tersebut. Proses dekomposisi dapat dilakukan </li></ul><ul><li>dengan menggambarkan diagram dependensi fungsional terlebih dahulu. </li></ul><ul><li>Berdasarkan diagram ini, relasi dalam bentuk normal pertama dipecah dalam </li></ul><ul><li>sejumlah relasi. </li></ul>
  18. 18. Gambar 4.14 Nama Jabatan Lama Gambar 4.15 Diagram dependensi fungsional relasi pada Gambar 4.14 Nip Nama Jabatan Keahlian Lama ( tahun) 107 Ilham Analis Senior Cobol 6 107 Ilham Analis Senior Oracle 1 109 Rian Analis Yunior Cobol 2 109 Rian Analis Yunior Dbase III+ 2 112 Fika Pemrogram Cobol 1 112 Fika Pemrogram Dbase III+ 1 112 Fika Pemrogram Sybase 1 Nip Keahlian
  19. 19. <ul><li>Diagram diatas menjelaskan bahwa : </li></ul><ul><li>       NAMA dan JABATAN memiliki dependensi fungsional terhadap NIP. </li></ul><ul><li>       LAMA mempunyai dependensi fungsional terhadap gabungan NIP dan </li></ul><ul><li>KEAHLIAN. </li></ul><ul><li>Berdasarkan diagaram dependensi fungsional tersebut. Pedekomposisiannya </li></ul><ul><li>menghasilkan dua buah relasi., yang katakanlah saja disebut NNJ dan NKP, </li></ul><ul><li>kedua relasi tersebut adalah sbb: </li></ul><ul><li>NNJ ( NIP , NAMA, JABATAN ) </li></ul><ul><li>NKP ( NIP, KEAHLIAN , LAMA ) </li></ul><ul><li>Tanda garis bawah digunakan untuk menyatakan kunci primer masing – masing relasi. </li></ul><ul><li>Seperti pada gambar sbb ... </li></ul>Relasi : NNJ Relasi : NKP Nip Nama Jabatan 107 Ilham Analis Senior 109 Rian Analis Yunior 112 Fika Pemrogram Nip Keahlian Lama ( tahun) 107 Cobol 6 107 Oracle 1 109 Cobol 2 109 Dbase III+ 2 112 Cobol 1 112 Dbase III+ 1 112 Sybase 1
  20. 20. Date [3] menggambarkan proses dekomposisi relasi yang tergolong dalam bentuk normal pertama ke bentuk normal kedua spt berikut : Terdapat relasi R : R ( A,B,C,D) KUNCI PRIMER ( A,B ) A  D R dapat digantikan dengan dua proyeksi R1 dan R2. R1 ( A,D ) KUNCI PRIMER ( A ) R2 ( A,B,C ) KUNCI PRIMER ( A,B ) KUNCI TAMU ( A ) REFERENSI R1
  21. 21. Bila rumusan diatas dikenakan pada relasi berikut : Nomor_pesanan Tgl_pesanan Item Total 50001 12/05/1997 P1 45.000 50001 12/05/1997 P2 45.000 50001 12/05/1997 P3 45.000 50001 12/05/1997 P4 45.000 50002 12/05/1997 P3 32.500 50002 12/05/1997 P5 32.500 50003 13/05/1997 P1 12.000 50003 13/05/1997 P2 12.000
  22. 22. <ul><li>C.4.3 Bentuk normal ketiga </li></ul><ul><li>Definisi bentuk nolmal ketiga: </li></ul><ul><li>Suatu relasi dikatakan dalam bentuk nolmal ketiga (3NF) jika: </li></ul><ul><li>Berada dalam bentuk nolmal kedua. </li></ul><ul><li>Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci </li></ul><ul><li> primer. </li></ul>Gambar 4.18 Relasi yang mamenuhi normal ke-2, tapi tidak Memenuhi bentuk normal ke-3 Nomor Pesanan Nomor Urut Kode Item Nama Item 50001 0001 P1 Pensil 50001 0002 P2 Buku Tulis 50001 0003 P3 Penggaris 50001 0004 P4 Penghapus 50002 0001 P3 Penggaris 50002 0002 P5 Pulpen 50002 0003 P6 Sepidol 50003 0001 P1 Pensil 50003 0002 P2 Buku Tulis
  23. 23. Pada contoh diatas, kunci primer relasi berupa gabungan NOMOR_PESANAN dan NOMOR_URUT. Baik KODE_ITEM maupun NAMA_ITEM mempunyai dependensi fungsional terhadap kunci primer tersebut. Namun perlu diperhatikan bahwa bila KODE_ITEM bernilai sama, NAMA_ITEM juga bernilai sama. Lebih tepatnya kalau KODE_ITEM yang menjadi penentu. Jadi NAMA_ITEM memiliki dependensi fungsional terhadap KODE_ITEM. Agar relasi pada Gambar 4.18 memenuhi bentuk normal ketiga maka diperlukan langkah normalisasi dengan mengikuti pendekatan berikut: Bila terdapat relasi R seperti berikut: R (A,B,C) KUNCI PRIMER (A) B C Maka relasi R dapat diganti dengan dua proyeksi R1 dan R2, dengan bentuk sebagai berikut: R1 (B,C) KUNCI PRIMER (B) R2 (A,B) KUNCI PRIMER (A) KUNCI TAMU (B) REFERENSI R1
  24. 24. Gambar 4.19 Dekomposisi yang menghasilkan relasi-relasi yang memenuhi bentuk normal ke-3 Nomor Pesanan Nomor Urut Kode Item 50001 0001 P1 50001 0002 P2 50001 0003 P3 50001 0004 P4 50002 0001 P3 50002 0002 P5 50002 0003 P6 50003 0001 P1 50003 0002 P2 Kode Item Nama Item P1 Pensil P2 Buku Tulis P3 Penggaris P4 Penghapus P3 Penggaris P5 Pulpen P6 Sepidol P1 Pensil P2 Buku Tulis
  25. 25. <ul><li>C.4.4 Bentuk Nolmal Boycee-Codd (BCNF) </li></ul><ul><li>Suatu relasi dibuat memenuhi bentuk nolmal Boycee-Codd jika dan hanya jika semua </li></ul><ul><li>penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik. </li></ul><ul><li>BCNF merupakan bentuk nolmal sebagai perbaikan terhadap 3NF. Suatu relasi yang </li></ul><ul><li>memenuhi BCNF selalu memenuhi 3NF, tetapi tidak untuk semuanya. </li></ul><ul><li>BCNF adalah perbaikan dari 3NF, karena bentuk nolmal ketigapun mungkin masih </li></ul><ul><li>mengandung anomaly sehingga masih perlu dinomalisasi lebih lanjut. </li></ul><ul><li>Relasi diatas didasarkan oleh fakta: </li></ul><ul><li>seseorang siswa dapat mengambil sejumlah kursus bahasa. </li></ul><ul><li>setiap tutur hanya mengajar pada sebuah kursus bahasa </li></ul><ul><li>(misalnya, Pierre hany mengajar bahasa Prancs). </li></ul><ul><li>3. Setiap siswa pada setiap kursus bahasa diajar oleh seorang tutor </li></ul><ul><li>(misalnya, tutor bahasa Inggris pada kelas Anwar hanyalah Richard). </li></ul><ul><li>Suatu kursus bahasa yang sama bisa saja memiliki lebih dari satu tutor </li></ul><ul><li>(misalnya, ada kelas bahasa Iggris yang diajar oleh Richard dan ada kelas </li></ul><ul><li>bahasa Inggris yang lan yang diajar oleh Suzanne). </li></ul><ul><li>Pada keadaan ini, kunci SKT berupa gabungan: </li></ul><ul><li>SISWA dan KURSUS, serta </li></ul><ul><li>SISWA dan TUTOR. </li></ul>
  26. 26. Gambar 4.20 Contoh relasi (SKT) yang memenuhi 3NF tetapi tidak memenuhi BCNF Siswa Kursus Tutor Gambar 4.21 Diagram Dependensi fungsional pada relasi SKT Siswa Kursus Tutor Anwar Bahasa Perancis Pierre Anwar Bahasa Ingris Richard Budi Bahasa Perancis Pierre Cecep Bahasa Inggris Suzane
  27. 27.   Cara mengkonversi relasi yang telah memenuhi bentuk normal ketiga ke BCNF adalah: 1)      carilah semua penentu 2)      bila terdapat penentu yang bukan berupa kunci kandidat, maka: 1. pisahkan relasi tersebut, dan 2. buat penentu tersebut sebagai kunci primer. Itulah sebabnya, agar memenuhi BCNF, relasi SKT perlu didekomposisi menjadi: 1.      ST (SISWA, TUTOR) 2.      TK (TUTOR, KURSUS).
  28. 28. <ul><li>C.4.5 Dependensi Nilai Banyak Bentuk Normal Keempat </li></ul><ul><li>Dependensi nilai banyak merupakan terjemahan dari multivalued dependency (MVD). </li></ul><ul><li>Dependensi ini pertama kali diperkenalkan oleh R. Fagin pada tahun 1977, </li></ul><ul><li>dipakai pada bentuk nolmal keempat (4NF). </li></ul><ul><li>Pada suatu relasi R dengan atribut A,B,C, atibut B dikatakan bersifat multidependen </li></ul><ul><li>terhadap A jika: </li></ul><ul><li>sekumpulan nilai B yang diberikan pada pasangan (A,C) hany tergantung pada </li></ul><ul><li>nilai A, dan </li></ul><ul><li>tergantung pada nilai C. </li></ul><ul><li>hubungan diatas dinyatakan dengan </li></ul><ul><li>A B </li></ul><ul><li>(dibaca:”A menentukan banyak nilai B” atau “B multidependen terhadap A”). </li></ul><ul><li>Bila R (A,B,C) merupakan suatu relasi, dengan A,B,C adalah atribut relasi tersebut, </li></ul><ul><li>maka proyeksi dari R berupa (A,B) dan (A,C) jika R memenuhi MVDA BC. </li></ul><ul><li>Perlu diketahui, bila terdapat: </li></ul><ul><li>A B </li></ul><ul><li>A C </li></ul><ul><li>Maka keduanya dapat ditulis menjadi: </li></ul><ul><li>A BC </li></ul>
  29. 29. <ul><li>Secara praktis, suatu relasi memenuhi bentuk nolmal keempat </li></ul><ul><li>jika: </li></ul><ul><li>telah berada pada BCNF, dan </li></ul><ul><li>2. tidak mengandung kedua atribut atau lebih yang bernilai banyak </li></ul>C.4.6. Dependensi Gabungan dan Bentuk Normal Kelima (5NF) suatu relasi R(X,Y, …., Z) memenuhi dependensi gabungan jika gabungan dari proyeksi A,B, …, C dengan A,B, …..,C merupakan subhimpunan dari atribut-atribut R. Dependensi gabungan sesuai dengan definisi di atas dinyatakan dengan notasi: (A,B, …..C) dengan A=XY, B=YZ, C=ZX. Suatu relasi berada dalam 5NF jika dan hanya jika setiap dependen gabungan dalam R tersirat oleh kunci kandidat rlasi R.
  30. 30. C.4.7. Overnormalisasi Tujuan Overnormalisasi adalah unuk meningkatkan kinerja, caranya adalah dengan memperhatikan permintaan terhadap data yang sering dilakukan.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×