NORMALISASI. Dr.Budi Setiyono, MT

dokumen-dokumen yang mirip
BAB IV Normalisasi Data

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

SISTEM BASIS DATA AUB SURAKARTA

Perancangan Basis Data

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

DESAIN DATABASE DAN NORMALISASI

Normalisasi Basis Data

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

Normalisasi Donny Yulianto, S.Kom

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

NORMALISASI DATA. Basis Data

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

NORMALISASI UNTUK BASIS DATA RELASIONAL

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

Normalisasi Database

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

PERANCANGAN BASIS DATA

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

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

Pertemuan 7-8 NORMALISASI

Basis Data 1 - TIS3333

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

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

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

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

Teknik dan Penerapan Normalisasi

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

1. Mengidentifikasikan dan menetapkan seluruh himpunan entitas yang akan terlibat.

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

Desain Data Base. Proses Desain Data Base

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

Model Data Dalam SBD

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

PERANCANGAN DATA BASE BY LILIS PUSPITAWATI, SE.,M.SI

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.

Pendekatan Normalisasi

Entity Relationship Model

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

Pertemuan 11. Donny Yulianto, S.Kom

Pemodelan Data (1) Week 2

NORMALISASI DATA POKOK BAHASAN. Pendahuluan

Perancangan Database Bagian II (Normalisasi( Normalisasi) TUJUAN PEMBELAJARAN

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

Modul 8 : Relational Key dan Functional Dependency

BASIS DATA. Model Data Relational. Fakultas Ilmu Komputer UDINUS

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

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

Kontrak Kuliah. Entity Relationship Diagram Bagian 1. Edi Sugiarto, S.Kom, M.Kom

Mengotimalisasi redundansi Menghilangkan anomali

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

NORMALISASI DAN TUGAS PRAKTEK

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

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

NORMALISASI DAN TUGAS PRAKTEK

PERTEMUAN 3 NORMALISASI

Implementasi Basis Data

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 Bagian I

ENTITY RELATIONSHIP DIAGRAM. SiBaDa Sesi 4

Pertemuan 2-3 ER-MODEL

MODUL II NORMALISASI DATA

SISTEM BASIS DATA (Lanjutan) :

Memahami tujuan penggunaan basis data Memahami elemen-elemen Basis Data Mampu mengidentifikasi tabel dan atribut dalam suatu basis data

BAB 7 MERANCANG BASIS DATA

Model Data: Model data merupakan kumpulan perangkat konseptual untuk menggambarkan data, hubungan data, semantik (makna) data dan batasan data Jenis

Teknik Normalisasi. Normalisasi

BAB III PERANCANGAN BASIS DATA DGN TEKNIK NORMALISASI

Tabel dan Key dalam Database Tipe data dan Karakter pada Database. Author : Minarni, S.Kom.,MM

KRS. MHS NIM (PK) Nama Alamat TmpLahir TglLahir KdJurusan ThnMasuk Status. NoKrs (PK1) (FK) NIM (PK2) (FK) ThAkad Semester StatusStudi

di definisikan hanya dengan memperhatikan functional dependencies dan key constrains

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

Pertemuan 9. By. Rita Wiryasaputra, ST., M. Cs.

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

Basis Data Modul Teori

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

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

Normalisasi Tabel Pada Basisdata Relasional

Entity Relationship Diagram. Rima Dias Ramadhani, S.Kom., M.Kom Wa:

Basis Data. Pemodelan Database dengan ER Diagram (Entity Relationship Diagram) Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

BAB II TINJAUAN PUSTAKA

1 BAB III OBJEK DAN METODE PENELITIAN

ER-DIAGRAM (ENTITY RELATIONSHIP DIAGRAM)

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

Model Data HANI IRMAYANTI, M.KOM

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

SISTEM BASIS DATA 3 SKS

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

ANALISA RANCANGAN DATABASE

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

ER (Entity-Relationship) Model dan Mapping ke Model Relasional. Politeknik Elektronika Negeri Surabaya

ENTITY RELATIONAL MODEL. Dr.Budi Setiyono, MT

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

Normalisasi Lanjut. I. Review Normalisasi

MODEL RELASI DAN NORMALISASI DATABASE

Dibuat oleh: Tim Pengajar Basis Data

Database System 4 Normalization

Minggu ke - 5 Basis Data 1. ER-D mapping to Model Relasional dan 1NF Normalisasi Database

Pertemuan 5 TEHNIK NORMALISASI

Transkripsi:

NORMALISASI Dr.Budi Setiyono, MT

Perancangan basis data Entity Relation Diagram (ERD) Identifikasi entitas table Entitas table Normalisasi Identifikasi keterkaitan field dalam suatu table table Table table normal

Key dan atribut Jenis key Superkey Satu atau lebih atribut yang dapat membedakan setiap baris data secara unik Contoh : (nim, nama_mhs, almaat_mhs, tgl_lahir) (nim, nama_mhs) dan (nim)

Key dan atribut (ljt) Candidate key Kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah table secara unik. Tidak boleh berisi atribut atau kumpulan atribut yang telah menjadi superkey yang lain sehingga setiap candidate key pasti superkey, tetapi tidak sebaliknya. Contoh : (nim) (nama_mhs) : jika dapat menjamin keunikan untuk setiap baris

Key dan atribut (ljt) Primary key Salah satu candidate key (jika lebih dari satu) dapat dijadikan primary key, dengan pertimbangan : key tersebut lebih sering dijadikan acuan lebih ringkas jaminan keunikan key tersebut lebih baik.

Tipe-tipe atribut Atribut deskriptif : atribut yang tidak menjadi primary key, misal nama_mhs, tgl_lahir. Atribut sederhana (simple attribute) atribut atomic, tidak dapat pecah-pecah (break down) lebih lanjut,missal nim, nama_mhs.

Tipe-tipe atribut (ljt) Atribut komposit (composit attribute) : atribut yang masih memungkinkan dipecah menjadi beberapa atribut lain, missal alamat_mhs dapat dpecah menjadi kota, jalan, kode_pos Atibut bernilai tunggal (single valued attribute) : ditujukan pada atribut yang paling banyak mempunyai satu nilai pada setiap baris. Atribut bernilai ganda (multivalued attribute) : atribut yang dapat diisi dengan lebih dari satu nilai, asalkan sejenis. Misal penambahan atribut pada table mhs akan dapat diisi dengan beberapa jenis hobi.

Tipe-tipe atribut (ljt) Mandatory attribute : Atribut yang harus ada isinya,misal nim, nama_mhs. Tidak boleh bernilai Null (note : Null tidak sama dengan spasi) Atribut turunan (derived attribute) : atribut yang nilainya diperoleh dari atribut lain. Misal penambahan atribut angkatan dan ip pada table mhs. (note : biasanya tidak diperlukan)

Functional Dependencies Definisi Jika diberikan sebuah table T dengan minimal 2 atribut A dan B, maka notasi A B diartikan sebagai A secara fungsional menentukan B atau B secara fungsional tergantung pada A jika dan hanya jika untuk setiap kumpulan baris (record) pada table T, apabila terdapat 2 baris data dengan nilai A yang sama, dipastikan bawa B juga sama.

Functional Dependencies KF yang terjadi misalnya : nim nama_mhs atribut nama_mhs hanya bergantung pada atribut nim, berarti untuk setiap nilai nim yang sama, dipastikan bahwa nama_mhs juga sama. MataKuliah, nim nilai Walaupun tidak dapat secara eksplisit ditunjukan bahwa jika matakuliah dan nim yang sama pasti nilai juga sama. Juga bisa ditunjukan untuk non KF, misal MataKuliah nim Atribut nim tidak tergantung pada atribut MataKuliah

Kriteria table yang baik Sebuah table dikategorikan baik (normal) jika telah memenuhi 3 kriteria berikut: Jika ada dekomposisi (penguraian) table, maka dekomposisinya harus dijamin aman (Lossless-Join decomposition) Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependecy Preservation) Tidak melanggar Boyce Code Normal Form (BCNF) Jika kriteria ketiga tidak dapat terpenuhi, maka paling tidak table tidak melanggar bentuk normal tahap ketiga.

Losless-Join Decomposition Syarat : hasil dekomposisi jika digabungkan akan kembali menjadi table semula. Contoh (lossy-join decomposition) Misal Table ABC dengan KF : A B dan B C

Losless-Join Decomposition Jika table ABC asal row 4 diganti KF : A B dan B C tidak dilanggar Dekomposisi yang Losless Decomposition

Closure dari Functional Dependencies Tidak memungkinkan untuk me- list semua KF yang mungkin dalam suatu table. Kumpulan KF yang diimplikasikan oleh sekumpuilan KF yang lain disebut sebagai ketertutupan dari S closure(s) atau S +. Contoh : {a} {b}; {b} {c}; maka {a} {c} disebut KF transitif via {b} Algoritma untuk menghitung S + dari S diusulkan oleh Armstrong inferensi

Closure dari Functional Dependencies Misal terdapat variable khayal A,B,C yang berisi kumpulan kolom dari relasi R dengan 8 field {s,t,u,v,w,x,y,z}; A={s,t}, B={u,v}, C={w,x}, D={y,z}. Inferensi amstrong didefinisikan : refleksifitas : bila B subset dari A, maka A B Augmentasi : bila A B, maka AC BC Transitivitas : bila A B dan B C, maka A C Self determinitation : A A Dekomposisi : bila A BC, maka A B dan A C Union : bila A B dan A C, maka A BC Komposisi : bila A B dan C D, maka AC BD

Closure dari Functional Dependencies Contoh, misal ada relasi R1 dengan 6 kolom {s,t,u,v,w,x} dengan KF : {s} {t,u}; {t} {w}; {u,v} {w,x} bisa disimpulkan KF {s,v} {x} dari inferensi : 1. {s} {t,u} (diberikan) 2. {s} {u} (aturan dekomposisi) 3. {s,v} {u,v} (aturan augmentasi) 4. {u,v} {w,x} (diberikan) 5. {s,v} {w,x} (transitivitas dari 3 dan 4) 6. {s,v} {x} (aturan dekomposisi)

DEPENDENCY PRESERVATION (Pemeliharaan ketergantungan) Perubahan pada data harus dapat menjamin tidak akan menghasilkan inkonsistensi data yang mengakibatkan terlanggarnya KF yang telah terbentuk Perubahan yang terjadi tersebut juga harus efisien Contoh : Jika table nilai ditambah atribut nama_mhs dan terjadi perubahan data pada table mhs,maka perubahan tersebut harus dijalarkan ke table nilai, sehingga KF selalu terjaga.

Analisa tabel berikut : NRP Nama Alamat KodeJur NamaJur Kajur M100 Joko Surabaya 1002 IF Rianto M101 Arianto Surabaya 1006 Ekonomi Suprapto M105 Adrian Sidoarjo 1002 IF Rianto M107 Tuti S Pasuruan 1008 Hukum Sigit

Bentuk Normal tahap pertama Jika sebuah table tidak memiliki atribut bernilai banyak (multivalued attribute) Apabila terdapat attribute yang bernilai banyak, harus didekomposisi Contoh

Bentuk Normal tahap pertama Table mhs harus di dekomposisi (tiga alternatif) Alternatif satu Masing-masing hobi dijadikan satu record, (tabel tersebut terdapat 6 record) Alternatif dua Hobi dipecah menjadi hobi1, hobi2, dan seterusnya (dari tabel terdapat 7 kolom) Alternatif tiga Table mhs (nim, nama_mhs, alamat, tgl_lahir) Table hobi (nim, hobi)

Bentuk Normal tahap kedua Jika atribut yang bukan primary key mempunyai ketergantungan fungsional (KF) pada key primer secara utuh. Contoh : Tabel nilai punya primary key {kode, nim} Table nilai (kode, nim, nilai) KF : kode, nim nilai Jika table nilai ditambah atribut nama. Maka : Table nilai (kode, nim, nama_mhs, nilai) KF : kode, nim nilai; nim nama_mhs. Mengakibatkan terlanggarnya Bentuk normal kedua, karena nama hanya tergantung secara parsial terhadap primary key.

Bentuk Normal tahap ketiga Merupakan bentuk alternatif, jika BCNF tidak dapat terpenuhi. Jika untuk setiap KF dengan notasi X A, dimana A mewakili semua atribut tunggal dalam table yang tidak ada di dalam X, maka : X harus superkey dari table tersebut Atau A merupakan bagian dari primary key pada table tersebut

Bentuk Normal tahap ketiga Contoh : Jika Table mhs (nim, nama_mhs, alamat, tgl_lahir) dimana atribut alamat dipisah menjadi atribut jalan, kota, dan kode_pos Jika Table mhs (nim, nama_mhs, jalan, kota,kode_pos, tgl_lahir) Tidak memenuhi bentuk normal ketiga. KF baru yang muncul : jalan, kota kode_pos {jalan, kota} bukan merupakan superkey. Sebagai solusi : table mhs didekomposisi menjadi table mhs dan table alamat : Table mhs (nim, nama_mhs, jalan, kota, tgl_lahir) Table alamat (alamat, kota, kode_pos)

Bentuk Normal tahap keempat dan kelima Bentuk normal keempat berkaitan dengan sifat ketergantungan banyak nilai, yang merupakan pengembangan dari ketergantungan fungsional. Bentuk normal kelima merupakan ketergantungan relasi antar table

BOYCE-CODD NORMAL FORM (BCNF) Syarat : Jika untuk semua KF dengan notai X Y, maka X harus merupakan super key pada table tersebut. Jika tidak, table harus didekomposisi sedemikian hingga X menjadi super key dari table-table hasil dekomposisi. Contoh : Pada table universal (not BCNF) terdapat 4 KF minimum, yaitu : Nim nam_mhs, alamat, tgl_lahir Kode_kul MataKuliah, sks, semester, waktu, ruang, nama_dos Nama_dos alamat_dos Nim, kode_kul nilai Table nilai (kode_kul, nim, nilai) Keempat table dalam kondisi BCNF.

Keuntungan Normalisasi Keuntungan bentuk normal Efek penghapusan tidak akan menghilangkan informasi yang ada Efek penambahan data insert tidak fleksibel Efek penghapusan? Efek penghapusan?