Teknik Normalisasi. Normalisasi

dokumen-dokumen yang mirip
Kontrak Kuliah. Bentuk-Bentuk Normalisasi. Edi Sugiarto, S.Kom, M.Kom

Pengampu : Agus Priyanto. STIKOM YOS SUDARSO PURWOKERTO Smart, Mastery, Innovative, Loving, Enterpreneurship

PERANCANGAN BASIS DATA

BASIS DATA. Desain Database dan Normalisasi. Fakultas Ilmu Komputer UDINUS

SISTEM BASIS DATA. Pertemuan 5. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

SISTEM BASIS DATA. Pertemuan 4. 3 SKS Semester 2 S1 Sistem Informasi Nizar Rabbi Radliya

Dibuat oleh: Tim Pengajar Basis Data

Copyright 2005 PENS-ITS C H A P T E R

SISTEM BASIS DATA AUB SURAKARTA

Functional Dependency And Normalization

Bentuk normal pertama (1NF) untuk menghilangkan atribut bernilai jamak. Bentuk normal kedua (2NF) untuk menghilangkan kebergantungan parsial.

BASIS DATA Mia Fitriawati, S.Kom., M.Kom.

ANALISA RANCANGAN DATABASE

Pertemuan 7-8 NORMALISASI

Normalisasi 1 Normalisasi 2 Normalisasi 3 BCNF

NORMAL FORM. Normalisasi Table sendiri terbagi atas bentuk normal ke 1 sampai bentuk normal ke 5. lebih jelasnya

C H A P T E R 5-8. Normalisasi Database. Arif Basofi, S.Kom, MT.

Modul 9 : Normalisasi 1st NF sampai dengan BCNF

2. First Normal Form (1NF) Suatu tabel dianggap normal ke satu (1NF) jika : - Tidak terdapat baris yang bernilai ganda atau duplikat.

Materi 5 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

NORMALISASI. Basis Data. Gentisya Tri Mardiani, S.Kom., M.Kom

DESAIN DATABASE DAN NORMALISASI

NORMALISASI UNTUK BASIS DATA RELASIONAL

PERTEMUAN 6. Normalisasi Database (Conoly-chap 14) (Ramakisman -chap 15)

ANOMALI. Anomali ada 3 jenis yaitu: Anomali pengubahan Anomali penyisipan Anomali penghapusan

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

C H A P T E R. Copyright 2005 PENS-ITS

Perancangan Basis Data

NORMALISASI (2) Beberapa Bentuk Normal yang penting: Bentuk Normal Pertama (1 st Normal Form) Bentuk Normal Ke-2 (2 nd Normal Form)

Database System 4 Normalization

Copyright 2005 PENS-ITS C H A P T E R. Normalisasi Database

Normalisasi Donny Yulianto, S.Kom

Materi 4 BASIS DATA 3 SKS Semester 4 S1 Sistem Informasi UNIKOM 2016 Nizar Rabbi Radliya

NORMALISASI. Dr.Budi Setiyono, MT

Pertemuan VII Normalization (1) Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT.

Normalisasi Lanjut. I. Review Normalisasi

Normalisasi Data. Author : Minarni, S.Kom.,MM

NORMALISASI BASIS DATA. Institut Teknologi Sumatera

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

Materi 4 PERANCANGAN BASIS DATA (PBD) 3 SKS Semester 5 S1 Sistem Informasi UNIKOM 2014 Nizar Rabbi Radliya

di definisikan hanya dengan memperhatikan functional dependencies dan key constrains

PERANCANGAN BASIS DATA PERTEMUAN KE -3. Rauf Fauzan, S.Kom.,M.Kom

Contents. Normalisasi. Bentuk Normalisasi. Dependency. Status Kunci (Key) Dekomposisi

TEHNIK NORMALISASI LANJUTAN

Perancangan Database Bagian II (Normalisasi( Normalisasi) TUJUAN PEMBELAJARAN

OVERVIEW BASIS DATA RELASIONAL. Oleh: Ir. M. Ramadhan, MT

BAB 7 MERANCANG BASIS DATA

Normalisasi Bagian I

PERTEMUAN 6 TEKNIK NORMALISASI

Desain Database. Dr. Khamami Herusantoso 1/107

Nor o mal a i l s i a s s a i s La L n a j n u j t u an

Normalisasi Database

20 Bhs.Jepang Misalnya akan dibuka kursus baru yaitu Bhs.Jerman dengan biaya akan tetapi belum ada seorangpun yang ikut kursus ini, shg

Basis Data 1 - TIS3333

PART 2: 1. Langkah Langkah Normalisasi 2. Bentuk Bentuk Normal 1 st NF, 2 nd NF, 3 rd NF, BCNF Dan bentuk-bentuk normal lainnya 3.

NORMALISASI (1) E.F Codd,1970. Normalisasi dilakukan terhadap desain tabel yang sudah ada untuk: 1/28/2012 1/28/2012

Desain Sistem Basis Data. 1. Struktur Basis Data 2. Normalisasi Data 3. ERD (entity relationship diagram)

ANALISA RANCANGAN NORMALISASI & DATABASE

Database Systems : A Practical Approach to Design, Implementation and. Dasar Perancangan & Implementasi Database Relasional Abdul Kadir

Bagian 4 Normalisasi. Kuliah Basis Data Pra S2 Ilmu Komputer - FMIPA Drs. Agfianto Eko Putra, M.Si.

STMIK AMIKOM YOGYAKARTA

P9 Normalisasi. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta

Menurut E.F. Codd: Normalisasi dipakai untuk membuat struktur tabel (relasi) dalam basis data mengurangi kemubaziran data; Kadang dipakai sebagai

E-R Model (Model Keterhubungan Entitas)

NORMALISASI DATA. Basis Data

BAB V. dimengerti, mudah dipelihara, mudah memprosesnya, dan mudah untuk dikembangkan sesuai kebutuhan baru

Mengotimalisasi redundansi Menghilangkan anomali

Pertemuan 12 TEHNIK NORMALISASI LANJUTAN. Contoh data :

Normalisasi Basis Data

PERTEMUAN 12 MACAM-MACAM BENTUK NORMALISASI

Normalisasi adalah salah satu pendekatan logical design dari suatu database relational, dan tampaknya sedikit memiliki kemiripan dengan model ER.

Rancangan Database. Database. File. Record. Data item atau field. Characters

NORMALISASI. Normalisasi adalah suatu teknik untuk mengorganisasi data ke dalam tabel tabel

BASIS DATA (BS203) NORMALISASI. fb: NDoro Edi. Page 1

Anomali adalah proses pada basis data yang memberikan efek samping yang tidak diharapkan (misalnya ketidakkonsistenan data karena adanya redudansi).

STK 572 Manajemen Data Statistik. Tim Dosen: Dr. Farit Muhammad Affendi Dr. Agus M Soleh

MODUL 1 SEPUTAR PERANCANGAN DATABASE. 1.1 Entity-Relationship Model (ER Model) dan Entity Relationship Diagram (ERD)

Copyright 2005 PENS-ITS C H A P T E R. Normalisasi 1NF

Normalisasi 1 Functional Dependency

NORMALISASI. Suzan Agustri 60

DESAIN DATABASE (MODEL RELASIONAL DAN DESKRIPSI ATRIBUT)

Teknik dan Penerapan Normalisasi

NORMALISASI DAN TUGAS PRAKTEK

Teknik Perancangan Basis Data

NORMALISASI DAN TUGAS PRAKTEK

Normalisasi. Normalisasi. Normalisasi. Tabel Universal. Tabel Universal 02/12/2010. (Pert. 8) Normalisasi

ANOMALI. Terlihat ada ketidak konsistenan. Fakta pertama menyatakan bahwa pemasok citra berlokasi di Bogor, tetapi fakta kedua menyatakan di Bandung.

Kontrak Kuliah. Functional Dependencies. Edi Sugiarto, S.Kom, M.Kom

Konsep Normalisasi dan Anomali Tabel

Normalisasi. Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.

Tahapan Proses Normalisasi

NORMALISASI. 2 nf. 3 nf BCNF. 4 nf. 5 nf. Hal. 1 dari 11

Database desain juga termasuk diagram ER (Entity-hubungan model). Diagram ER adalah diagram yang membantu merancang database secara efektif dan

Pertemuan 5 TEHNIK NORMALISASI

Normalisasi Tabel Database. Kalamullah Ramli

BAB 7 PENERAPAN BENTUK NORMALISASI

Normalisasi. Didi Supriyadi, S.T., M.Kom Pertemuan ke-6

BAB III PERANCANGAN BASIS DATA DGN TEKNIK NORMALISASI

MODEL RELASI DAN NORMALISASI DATABASE

Transkripsi:

Teknik Normalisasi 1 Normalisasi Teknik/pendekatan yang digunakan dalam membangun disain lojik basis data relasional melalui organisasi himpunan data dengan tingkat ketergantungan fungsional dan keterkaitan yang tinggi sedemikian sehingga menghasilkan struktur tabel yang normal. Tujuan : Minimalisasi redundansi (pengulangan data) Memudahkan identifikasi entitas Mencegah terjadinya anomali penyisipan, ubah, hapus 2 1

Beberapa bentuk normal (normal forms, NF) : 1NF, 2NF, 3NF, BCNF ( based on keys and functional dependencies) 4NF, 5NF (based on keys and multi-valued dependencies) Menghilangkan group Menghilangkan dependensi parsial Menghilangkan dependensi transitif Menghilangkan dependensi pd bukan kunci kandidat UNF 1NF 2NF 3NF BCNF Menghilangkan lebih dari dependensi bernilai ganda 5NF 4NF Menghilangkan dependensi gabungan DEPENDENSI FUNGSIONAL (DF) Terdapat relasi R dengan atribut X dan Y R(X,Y) maka Atribut Y dikatakan memiliki DF terhadap X, apabila nilai dalam X berhungan tepat satu nilai dengan Y dengan notasi X Y X disebut determinan(penentu) Y disebut dependensi yang tergantung ID_pemasok Nama_pemasok NPM nama_mhs Kode_brg nama_brg DEPENDESI TOTAL X Y, Y X Contoh : ID_pemasok Nama_pemasok Nama_pemasok ID_pemasok Kode_brg nama_brg nama_brg Kode_brg NPM nama_mhs??? 2

Tabel : Pendidikan_dosen Kd_dos Nm_dos Jekel Pendidikan Thn_lulus D41 Ani W S1 1988 D41 Ani W S2 1994 D42 Budi L S1 1988 D42 Budi L S2 1996 D42 Budi L S3 2003 DEPENDENSI PENUH Nilai Y tergantung lebih dari satu nilai ( X dan Z) {kd_dos,pendidikan } thn_lulus DEPENDENSI PARSIAL Y atribut non_kunci, X atribut kunci Y DF terhadap bagian dari X tetapi tidak terhadap keseluruhan X {kd_dos,pendidikan } jekel Jekel sebenarnya hanya DF pada kd_dos ( bagian dari kunci utama) DEPENDENSI TRANSITIF Z memiliki dependensi transitif terhadap X jika : Z memiliki DF terhadap Y Y memilikidf terhadap X Y Z X Y X Y Z maka X Z (Asosiatif) 3

Tabel : Barang Kd_brg Nm_brg Hrg_jual Kd_ pemasok T001 TV 21 1500000 P22 T010 TV 29 3000000 P22 T002 AC Sam 2500000 P21 T004 AC Pana 2750000 P23 T003 Kulkas 1A 100000 P20 Tabel : Pemasok Kd_brg nm_brg Kd_pemasok nm_pemasok Kd_brg kd_pemasok nm_pemasok Maka : Kd_brg nm_pemasok Kd_ pemasok Nm_pemasok kota P22 PT Jaya Elek Bogor P21 PT Elektindo Yogya P23 PT Nindya Banten P20 PT Amerta Bandung First Normal Form (1NF) Suatu relasi disebut memenuhi bentuk normal pertama (1NF) jika dan hanya jika setiap atribut dari relasi tersebut hanya memiliki nilai tunggal dan tidak ada pengulangan grup atribut dalam baris. Bentuk 1NF tidak boleh mengandung grup atribut yang berulang. Tujuan membentuk 1NF : semantik tabel menjadi lebih eksplisit semua operator aljabar relasional dapat diaplikasikan pada tabel. 8 4

First Normal Form (1NF) Tabel : Sales IDSales NamaSales Telepon ADN006 Yeni, SE 3517261, 3520165 ADN007 Memey 4744621,08122861427 ADN008 Tina 08566241521 ADN009 Ir. Yanto 7265122, 7123910 ADN010 Made 6723192 1NF non-atomic Unnormalized Not 1NF IDSales NamaSales Telepon ADN006 Yeni, SE 3517261 ADN006 Yeni, SE 3520165 ADN007 Memey 4744621 ADN007 Memey 08122861427 ADN008 Tina 08566241521 ADN009 Ir. Yanto 7265122 ADN009 Ir. Yanto 7123910 ADN010 Made 6723192 9 First Normal Form (1NF) Unnormalized Not 1NF Tabel : Buku repeated ISBN Thn_Terbit ID_Pengarang Nama_Pengarang ID_Pengarang Nama_Pengarang 12-1202-19222 1992 K0121 Aris M K1021 Kosim P 11-1090-29101 2001 K1021 Kosim P 11-1090-29102 2001 K2091 K Odelia K0121 Aris M 12-1201-90871 2002 K2092 Renaldi K2091 K Odelia 13-2089-12910 2001 K2019 Samsuri J ISBN Thn_Terbit ID_Pengarang Nama_Pengarang 12-1202-19222 1992 K0121 Aris M 12-1202-19222 1992 K1021 Kosim P 11-1090-29101 2001 K1021 Kosim P 11-1090-29102 2001 K2091 K Odelia 11-1090-29102 2001 K0121 Aris M 12-1201-90871 2002 K2092 Renaldi 12-1201-90871 2002 K2091 K Odelia 13-2089-12910 2001 K2019 Samsuri J 1NF 10 5

Second Normal Form (2NF) Suatu relasi disebut memenuhi bentuk normal kedua (2NF) jika dan hanya jika : 1. memenuhi 1NF 2. setiap atribut yang bukan kunci utama tergantung secara fungsional terhadap semua atribut kunci dan bukan hanya sebagian atribut kunci ( DF Penuh). Untuk normalisasi ke bentuk 2NF, maka tabel 1NF didekomposisi menjadi beberapa tabel yang masing-masing memenuhi 2NF. Bila terdapat ketergantungan parsial maka : eliminate. Tujuan membentuk 2NF : semantik tabel 2NF menjadi lebih eksplisit (DF Penuh) mengurangi update anomali yang masih mungkin terjadi pada 1NF 11 Second Normal Form (2NF) Bagaimana bila R = (A,B,C,D,E) A,B kunci utama tetapi dengan DF : (A,B) (C,D) dan B E. Apakah memenuhhi 2NF? Maka R bukan 2NF Karena atribut E yang bergantung hanya pada atribut B saja (DF parsial) dan bukan terhadap (A,B). Dari DF : (A,B) (C,D) juga mencerminkan bahwa hanya C dan D saja yang bergantung secara fungsional terhadap (A,B), tidak untuk E. Jadi bukan 2NF. Untuk mengubah menjadi 2NF, lakukan dekomposisi menjadi : R1 = (A,B,C,D) dan R2 = (B,E). Tampak R1 dan R2 memenuhi 2NF. 13 6

Second Normal Form (2NF) Diketahui Workshop = (NIM,Modul,Biaya,Grade) Peserta Workshop NIM Modul Tabel : workshop Biaya NIM Modul Biaya Grade 0129 VB.Net 250000 A 0130 Prolog 100000 A.0129 Prolog 100000 B 0201 Delphi 6 150000 A 0250 VB.Net 250000 B Grade Key : NIM+Modul FD : Modul Biaya (Biaya ditentukan oleh Modul yang diambil mahasiswa) 1NF Not 2NF Sebab dalam tabel ini, Biaya tidak bergantung penuh pada atribut kunci (NIM,Modul) 14 Second Normal Form (2NF) NIM Modul Biaya Grade (NIM,Modul) = key (Modul) Biaya (DF Parsial) (NIM,Modul) Grade (DF Penuh) NIM Modul Biaya Grade Eliminate Buat Dekomposisi: Works1 = (NIM,Modul,Grade) Works2 = (Modul,Biaya) DF PENUH 15 7

Second Normal Form (2NF) Workshop NIM Modul Biaya Grade.0129 VB.Net 250000 A.0130 Prolog 100000 A 0129 Prolog 100000 B.0201 Delphi 6 150000 A.0250 VB.Net 250000 B NIM Modul Grade 0129 VB.Net A 0130 Prolog A 0129 Prolog B 0201 Delphi 6 A 0250 VB.Net B Works1 Modul Biaya VB.Net 250000 Prolog 100000 Delphi 6 150000 Works2 16 Third Normal Form (3NF) Suatu relasi disebut memenuhi bentuk normal ketiga (3NF) jika dan hanya jika : 1. memenuhi 2NF 2. setiap atribut yang bukan kunci tidak tergantung secara fungsional terhadap atribut bukan kunci yang lain dalam relasi tsb (tidak terdapat ketergantungan transitif pada atribut bukan kunci). 17 8

Third Normal Form (3NF) Jika suatu relasi sudah memenuhi 2NF tapi tidak memenuhi 3 NF, maka untuk normalisasi ke bentuk 3NF, tabel 2NF didekomposisi menjadi beberapa tabel hingga masingmasing memenuhi 3NF. Tujuan membentuk 3NF : :: semantik tabel 3NF menjadi lebih eksplisit (DF Penuh hanya pada primary key). :: menghindari update anomali yang masih mungkin terjadi pada 2NF. 18 Third Normal Form (3NF) Contoh : Diketahui tabel R=(A,B,C,D,E) ; A,B kunci utama (primary key) dengan DF: A,B C,D,E dan C D,E maka R bukan 3NF sebab : Atribut D dan E (bukan kunci utama) bergantung secara fungsional pada C (yang juga bukan kunci utama). Melalui FD : Diketahui A,B C,D,E. C D,E. Agar R memenuhi 3NF maka didekomposisi menjadi : R1=(A,B,C) dan R2=(C,D,E) sehingga R1 dan R2 memenuhi 3NF. 19 9

Third Normal Form (3NF) DF : A,B C,D,E berarti A,B C ; C D,E ; A,B D,E A,B D reduce A,B E reduce Dekomposisinya : R1=(A,B,C) ; DF : (A,B) C R2=(C,D,E) ; DF : C D,E R A B C D E A B C C D E R1 R2 20 Third Normal Form (3NF) Misal diketahui struktur informasi dari suatu dokumen supplier : S Status City PQ P Qty S1 20 LONDON P1 300 P2 200 P3 400 P4 200 P5 100 P6 100 S2 10 PARIS P1 300 P2 400 S3 10 PARIS P2 200 S4 20 LONDON P2 200 P4 399 P5 400 Akan dibentuk suatu tabel dengan skema TPS=(S,Status,City,P,Qty) dengan (S,P) = primary key dan berlaku DF : S Status S City City Status Lakukan normalisasi dari 1NF hingga 3NF. 21 10

Third Normal Form (3NF) Tabel : TPS S Status City P Qty S1 20 LONDON P1 300 S1 20 LONDON P2 200 S1 20 LONDON P3 400 S1 20 LONDON P4 200 S1 20 LONDON P5 100 S1 20 LONDON P6 100 S2 10 PARIS P1 300 S2 10 PARIS P2 400 S3 10 PARIS P2 200 S4 20 LONDON P2 200 S4 20 LONDON P4 399 S4 20 LONDON P5 400 1NF Not 2NF Masalah : Redundansi Anomali : S (Status,City) tapi kita tidak bisa: Insert data (S5,30,JAKARTA) tanpa diikuti data P (khususnya) dan Q. Menghapus 1 baris data akan jg merusak keutuhan informasi. Solusi : Dekomposisi menjadi : TPS1 dan TPS2 22 Third Normal Form (3NF) TPS1 S S1 S2 S3 S4 Status City 20 LONDON 10 PARIS 10 PARIS 20 LONDON 1NF 2NF Not 3NF (transitif.) S City City Status Untuk insert data (S5,30,JAKARTA) dapat lakukan dgn aman Tapi masih ada anomaly : karena City Status maka tidak bisa insert data City baru sebelum Status punya nilai. Penghapusan 1 baris sebagian data City juga bisa merusak keutuhan informasi S. Selain itu, masih ada redundansi pada Status dan City 23 11

Third Normal Form (3NF) Tabel : TPS2 S P Qty S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S1 P5 100 S1 P6 100 S2 P1 300 S2 P2 400 S3 P2 200 S4 P2 200 S4 P4 399 S4 P5 400 1NF 2NF 3NF Third Normal Form (3NF) TPS1-1 TPS1-2 TPS2 S City City Status S P Qty 1NF S1 LONDON LONDON 20 S1 P1 300 2NF S2 PARIS 3NF PARIS 10 S1 P2 200 S3 PARIS S1 P3 400 1NF S4 LONDON 2NF S1 P4 200 S1 P5 100 1NF 3NF S1 P6 100 2NF 3NF S2 P1 300 S2 P2 400 S3 P2 200 S4 P2 200 S4 P4 399 S4 P5 400 25 12

Boyce Codd Normal Form (BCNF) Contoh : Diketahui tabel R=(A,B,C) dengan FD : AB C dan C B. Apakah : 3NF? BCNF? R memenuhi 3NF karena : AB C ; maka AB ABC, atau A R. Jadi AB superkey dari R C B ; maka AC AB, atau AC ABC dan AC R. Jadi AC juga superkey (sekaligus juga candidate key) dari R Karena AB superkey dan C subset candidate key maka R memenuhi 3NF R bukan BCNF karena : AB superkey tetapi C bukan superkey. 26 Boyce Codd Normal Form (BCNF) Pinjam idpinjam sid bid date P-01 53666 B002 10/11/2005 P-02 53668 B001 10/11/2005 P-03 53668 B004 11/12/2005 P-04 53670 B002 14/11/2005 Pinjam1 idpinjam sid P-01 53666 P-02 53668 P-03 53668 P-04 53670 DF trivial BCNF Didekomposisi menjadi : Pinjam2 idpinjam bid date P-01 B002 10/11/2005 P-02 B001 10/11/2005 P-03 B004 11/12/2005 P-04 B002 14/11/2005 idpinjam bid, date idpinjam superkey 27 BCNF 13

Comparison of BCNF And 3NF Contoh kasus redundansi pada 3NF Jadwal = (Nim,Modul,Dosen) DF = {Dosen Modul} Relasi ini memenuhi 3NF, karena tidak ada ketergantungan transitif. Tetapi tidak memenuhi BCNF karena dari Dosen Modul maka Dosen bukan candidate key. Alternatif yang dilakukan adalah dekomposisi tabel menjadi : NIM Modul Dosen 0129 VB.Net Ajib 0130 Prolog Aris 0129 Prolog Aris 0201 VB Net Budi 0250 Prolog Jono 0260 VB.Net Budi NIM Dosen 0129 Ajib 0130 Aris 0129 Aris 0201 Budi 0250 Jono 0260 Budi Dosen Ajib Aris Jono Budi Modul VB.Net Prolog Prolog VB.Net NOT BCNF BCNF 28 LATIHAN!! Berdasarkan PO : Rancanglah tabel penyimpanan datanya 29 14

Buat ERD dan Normalisasi 15