endang b

30
Normalisasi A.Pengertian Normalisasi >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. B. Anomali 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 ). > Macam - macam Anomali : 1. Anomali Peremajaan. 2. Anomali Penghapusan. 3. Anomali Penyisipan.

Upload: stmik-wu-purwokerto

Post on 04-Jul-2015

1.098 views

Category:

Education


1 download

DESCRIPTION

NORMALISASI DATABASE

TRANSCRIPT

Page 1: Endang B

Normalisasi•A.Pengertian Normalisasi

•>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.

•B. Anomali

•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 ).

•> Macam - macam Anomali :

•1. Anomali Peremajaan.

•2. Anomali Penghapusan.

•3. Anomali Penyisipan.

Page 2: Endang B

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

Page 3: Endang B

Relasi diatas menyatakan bahwa :

• Kuliah menggunakan RUANG tertentu ( misalnya jaringan komputer menggunakan Ruang Merapi ).

•Suatu RUANG berada pada TEMPAT tertentu ( misalnya ruang merapi terdapat pada gedung utara ).

B.3.Anomali Penghapusan

Anomali penghapusan terjadi sekiranya sesuatu baris ( Tupel ) yang terpakai dihapus dan sebagai akibatnya terdapat data lain yang hilang.

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 !

Page 4: Endang B

Dependensi ( Ketergantungan )

Merupakan konsep yang mendasari Normalisasi. Dependensi menjelaskan hubungan antaratribut, atau secaralebih khusus menjelaskan nilai suatu atribut yang menetukan nilai suatu atribut lainnya.

Macam – macam Dependensi :

1. Dependensi Fungsional

2. Dependensi Fungsional sepenuhnya

3. Dependensi Total

4. Dpendensi Transitif

C.1.1. Dependensi Fungsional.

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.

Notasi : X Y ( Dibaca “ X secara fungsional menetukan Y “ atau cukup dibaca “ X panah Y “ ).

Page 5: Endang B

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 Gambar 4.5 Relasi PESAN_JUAL.

Page 6: Endang B

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 } JUMLAHKeterangan :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 .

Page 7: Endang B

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

Page 8: Endang B

Kode Pemasok Nama Pemasok Kota

K1 Kartika Jakarta

C1 Citra Bandung

C2 Candra Jakarta

Gambar 4.6 Relasi untuk memperlihatkan dependensi total

Pada contoh ini :

KODE_ PEMASOK NAMA_PEMASOK Dengan asumsi tidak ada nama pemasok yang sama.

Page 9: Endang B

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.

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

Gambar 4.7 Contoh relasi yang menunjukan adanya dependensi transitif

Terlihat bahwa : KULIAH RUANG TEMPATDengan demikian TEMPAT mempunyai dependensi transitif terhadap KULIAH.

Page 10: Endang B

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.

KULIAH

RUANG

RUANG

TEMPAT

Gambar 4.8 Contoh diagram Dependensi fungsional

Page 11: Endang B

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 .

Nim Nama Program Studi

95001 Ali Ekonomi

95002 Edi Ekonomi

95003 Ali Fisika

Gambar 4.9 Memperlihatkan relasi dan dua macam Dekomposisi

Bentuk Relasi Semula

Page 12: Endang B

Nim Nama95001 Ali95002 Edi95003 Ali

Relasi : Nim_NamaNama Program Studi

Ali EkonomiEdi Ekonomi

Ali Fisika

Relasi : Nim_Prog

(a) Contoh dekomposisi tak hilang

Nim Program Studi

95001 Ekonomi

95002 Ekonomi

95003 Fisika

Relasi : Nama_ProgNim Nama95001 Ali95002 Edi95003 Ali

Relasi : Nim_Nama

(b) Contoh dekomposisi hilang

Gambar 4.9 Contoh pendekomposisian relasi

Page 13: Endang B

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.

Page 14: Endang B

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 )

Page 15: Endang B

Relasi Umum

1NF

2NF

3NF

4NF

5NF

BCNF

Gambar 4.10 Bentuk-bentuk normal

Page 16: Endang B

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.

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

Gambar 4.11Contoh data belum ternormalisasi

Page 17: Endang B

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 .

C.4.2. Bentuk Normal Kedua

Bentuk normal kedua didefinisikan berdasarkan dependensi fungsional. Suatu relasi berada dalam bentuk normal kedua jika dan hanya jika : Berada dalam bentuk normal pertama. Semua atribut bukan kunci memiliki dependensi sepenuhnya terhadap kunci primer.

Atribut bukan kunci adalah atribut yang tidak merupakan bagian kunci primer.Untuk mengubah relasi bentuk normal pertama ke bentuk normal kedua perlu dilakukan dekomposisi terhadap relasi tersebut. Proses dekomposisi dapat dilakukandengan menggambarkan diagram dependensi fungsional terlebih dahulu. Berdasarkan diagram ini, relasi dalam bentuk normal pertama dipecah dalam sejumlah relasi.

Page 18: Endang B

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

Gambar 4.14

Nama

Jabatan

Nip

KeahlianLama

Gambar 4.15 Diagram dependensi fungsional relasi pada Gambar 4.14

Page 19: Endang B

Diagram diatas menjelaskan bahwa : NAMA dan JABATAN memiliki dependensi fungsional terhadap NIP. LAMA mempunyai dependensi fungsional terhadap gabungan NIP dan KEAHLIAN.Berdasarkan diagaram dependensi fungsional tersebut. Pedekomposisiannya menghasilkan dua buah relasi., yang katakanlah saja disebut NNJ dan NKP, kedua relasi tersebut adalah sbb:

NNJ ( NIP, NAMA, JABATAN )NKP ( NIP, KEAHLIAN, LAMA )

Tanda garis bawah digunakan untuk menyatakan kunci primer masing – masing relasi. Seperti pada gambar sbb ...

Nip Nama Jabatan

107 Ilham Analis Senior

109 Rian Analis Yunior

112 Fika Pemrogram

Relasi : NNJ 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

Relasi : NKP

Page 20: Endang B

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

Page 21: Endang B

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

Bila rumusan diatas dikenakan pada relasi berikut :

Page 22: Endang B

C.4.3 Bentuk normal ketiga

Definisi bentuk nolmal ketiga:Suatu relasi dikatakan dalam bentuk nolmal ketiga (3NF) jika:• Berada dalam bentuk nolmal kedua.• Setiap atribut bukan kunci tidak memiliki dependensi transitif terhadap kunci

primer.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

Gambar 4.18Relasi yang mamenuhi normal ke-2, tapi tidak Memenuhibentuk normal ke-3

Page 23: Endang B

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

Page 24: Endang B

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

Page 25: Endang B

C.4.4 Bentuk Nolmal Boycee-Codd (BCNF)

Suatu relasi dibuat memenuhi bentuk nolmal Boycee-Codd jika dan hanya jika semua penentu (determinan) adalah kunci kandidat (atribut yang bersifat unik.BCNF merupakan bentuk nolmal sebagai perbaikan terhadap 3NF. Suatu relasi yang memenuhi BCNF selalu memenuhi 3NF, tetapi tidak untuk semuanya. BCNF adalah perbaikan dari 3NF, karena bentuk nolmal ketigapun mungkin masih mengandung anomaly sehingga masih perlu dinomalisasi lebih lanjut.Relasi diatas didasarkan oleh fakta:10. seseorang siswa dapat mengambil sejumlah kursus bahasa.11. setiap tutur hanya mengajar pada sebuah kursus bahasa

(misalnya, Pierre hany mengajar bahasa Prancs).3. Setiap siswa pada setiap kursus bahasa diajar oleh seorang tutor

(misalnya, tutor bahasa Inggris pada kelas Anwar hanyalah Richard).Suatu kursus bahasa yang sama bisa saja memiliki lebih dari satu tutor (misalnya, ada kelas bahasa Iggris yang diajar oleh Richard dan ada kelas bahasa Inggris yang lan yang diajar oleh Suzanne).

Pada keadaan ini, kunci SKT berupa gabungan:20. SISWA dan KURSUS, serta21. SISWA dan TUTOR.

Page 26: Endang B

Siswa Kursus TutorAnwar Bahasa Perancis PierreAnwar Bahasa Ingris RichardBudi Bahasa Perancis PierreCecep Bahasa Inggris Suzane

Gambar 4.20 Contoh relasi (SKT) yang memenuhi 3NF tetapi tidak memenuhi BCNF

Siswa

KursusTutor

Gambar 4.21 Diagram Dependensi fungsional pada relasi SKT

Page 27: Endang B

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).

Page 28: Endang B

C.4.5 Dependensi Nilai Banyak Bentuk Normal Keempat

Dependensi nilai banyak merupakan terjemahan dari multivalued dependency (MVD). Dependensi ini pertama kali diperkenalkan oleh R. Fagin pada tahun 1977, dipakai pada bentuk nolmal keempat (4NF).Pada suatu relasi R dengan atribut A,B,C, atibut B dikatakan bersifat multidependenterhadap A jika:8. sekumpulan nilai B yang diberikan pada pasangan (A,C) hany tergantung pada

nilai A, dan • tergantung pada nilai C. hubungan diatas dinyatakan dengan

A B(dibaca:”A menentukan banyak nilai B” atau “B multidependen terhadap A”).Bila R (A,B,C) merupakan suatu relasi, dengan A,B,C adalah atribut relasi tersebut, maka proyeksi dari R berupa (A,B) dan (A,C) jika R memenuhi MVDA B\C.Perlu diketahui, bila terdapat:

A BA C

Maka keduanya dapat ditulis menjadi:A B\C

Page 29: Endang B

Secara praktis, suatu relasi memenuhi bentuk nolmal keempatjika:• telah berada pada BCNF, dan2. tidak mengandung kedua atribut atau lebih yang bernilai

banyak

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.

Page 30: Endang B

C.4.7. OvernormalisasiTujuan Overnormalisasi adalah unuk meningkatkan kinerja, caranya adalah dengan memperhatikan permintaan terhadap data yang sering dilakukan.