Normalization (Part 1).

Slides:



Advertisements
Presentasi serupa
Basis data - day 4 Rachmat wahyu pramono Dosen Pembimbing:
Advertisements

NORMALISASI DATA Basis Data.
Normalisasi Pertemuan Minggu Ke-6.
Normalization (Part 2).
Ketergantungan Fungsional (Functional Dependency)
Basis data - day 6 Rachmat wahyu pramono Dosen Pembimbing: Rengga Asmara, S. Kom, OCA Politeknik Elektronika Negeri Surabaya Departemen Teknik.
Model Relasional Part-3. 2 Review Pertemuan 5 ► Tahap implementasi basis data merupakan upaya untuk membangun basis data fisik yang ditempatkan dalam.
Normalisasi.
Normalisasi Basis Data
Normalisasi Basis Data
Normalization 1.
NORMALISASI.
NORMALISASI.
NORMALISASI.
Normalisasi Basis Data
SISTEM BASIS DATA STMIK – AUB SURAKARTA
IMPLEMENTASI NORMALISASI
NORMALISASI DAHLAN ABDULLAH
Mentari Puji Lestari TI 2B D3
10 Normalisasi Mata Kuliah: Basis Data ILMU KOMPUTER
Pertemuan 5 TEHNIK NORMALISASI.
Normalisasi (bagian I)
Normalisasi (bagian III)
Sistem Basis Data Renni Angreni, M.Kom.
Normalisasi dan Functional Dependency
UNIVERSUTAS NEGERI MAKASSAR
Normalisasi Basis data 11.
C H A P T E R 4 Normalisasi 1NF Chapter 8 - Process Modeling.
NORMALISASI BASIS DATA
Rizka Hadiwiyanti, S.Kom, M.Kom
Database design Siti Asmiatun, M.Kom.
FUNCTIONAL DEPENDENCY (NORMALISASI)
Basis Data dan SBP Disusun Oleh : Lily Wulandari.
NORMALISASI.
Pertemuan 9 ANALISA RANCANGAN DATABASE.
NORMALISASI.
NORMALISASI.
Materi Kuliah Basis Data
Perancangan Basis Data
NORMALISASI.
Normalisasi PERTEMUAN KE-7.
Sistem Basis Data Rahajeng Ratnaningsih, S. Kom STMIK – AUB Surakarta
KUMPULAN SOAL relasi & FUNGSI
NORMALISASI DATA Basis Data.
Normalisasi Basis Data
NORMALISASI KUSRINI.
NORMALISASI DATA Basis Data.
Basis Data 1 Rudi Hartono, S.E, M.Kom.
PERTEMUAN 2 NORMALISASI
Normalization 1.
DESAIN DATABASE DAN NORMALISASI
NORMALISASI.
Matakuliah : Sistem Basisdata Versi Materi
Pertemuan Minggu Ke-10 NORMALISASI.
NORMALISASI DATA MEETING 5 Febriyanno Suryana, S.Kom, MM
Normalization 1.
Model Relasional Part-3
NORMALISASI DATA MEETING 5 Febriyanno Suryana, S.Kom, MM
Normalisasi.
PERTEMUAN KE-11 NORMALISASI DATA (I).
NORMALISASI KUSRINI, M.KOM.
NORMALISASI PERTEMUAN 17.
Normalisasi Basis Data
Normalisasi.
DESAIN DATABASE DAN NORMALISASI
Normalisasi Basis Data
NORMALISASI.
Normalisasi.
NORMALISASI.
NORMALISASI DATABASE Achmad fitro, M.Kom.
Transcript presentasi:

Normalization (Part 1)

Apa Yang Akan Kita Pelajari? PART 1: Definisi Normalisasi Tujuan Normalisasi Konsep – Konsep yang Mendasarinya The Three Keys: Super Key, Candidate Key & Primary Key Functional Dependencies (FD) PART 2: Langkah – Langkah Normalisasi Bentuk – Bentuk Normal 1st NF, 2nd NF, 3rd NF, BCNF Dan bentuk-bentuk normal lainnya Denormalisasi

Definisi Normalisasi E.F Codd,1970 Normalisasi adalah langkah-langkah sistematis untuk menjamin bahwa struktur database memungkinkan untuk general purpose query dan bebas dari insertion, update dan deletion anomalies yang dapat menyebabkan hilangnya integritas data. E.F Codd,1970

Tujuan Normalisasi Normalisasi dilakukan terhadap desain tabel yang sudah ada untuk: Meminimalkan redundansi (pengulangan) data sehingga desain tabel yang sudah ada menjadi lebih efisien Menjamin integritas data dengan cara menghidari 3 Anomali Data: Update Anomaly Insertion Anomaly Deletion Anomaly

Desain Tabel yang Lebih Efisien dan Bebas Anomali Tujuan Normalisasi Desain Tabel Awal Normalisasi Desain Tabel yang Lebih Efisien dan Bebas Anomali

Tujuan Normalisasi (cont’d) NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai 1-01 Tukimin TE Elektro TE-001 Elektronika 3 A DU-001 English 2 2-01 Jamilah IF Informatika IF-001 Algoritma B C 2-02 Maemunah IF-002 Database Update Anomaly Jika ingin mengupdate jumlah sks mata kuliah English dari 2 menjadi 3 sks, maka harus mengupdate lebih dari 1 record, yaitu baris 2 dan 4 jika hanya salah satu yang diupdate, maka data menjadi tidak konsisten

Tujuan Normalisasi (cont’d) NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai 1-01 Tukimin TE Elektro TE-001 Elektronika 3 A DU-001 English 2 2-01 Jamilah IF Informatika IF-001 Algoritma B C 2-02 Maemunah IF-002 Database Insertion Anomaly Kita tidak bisa menambah data mahasiswa bernama Zubaedah yang belum mengambil kuliah apapun / belum registrasi NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai 1-02 Zubaedah TE Elektro ???

Tujuan Normalisasi (cont’d) NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai 1-01 Tukimin TE Elektro TE-001 Elektronika 3 A DU-001 English 2 2-01 Jamilah IF Informatika IF-001 Algoritma B C 2-02 Maemunah IF-002 Database Deletion Anomaly Jika kita menghapus data mahasiswa bernama Maemunah Maka kita juga akan kehilangan data mata kuliah Database

The Three Keys Ada 3 macam key dalam sebuah tabel: Super Key Candidate Key (minimal Super Key) Primary Key (chosen Candidate Key)

The Three Keys (cont’d) Super Key: satu atribut atau gabungan atribut (kolom) pada tabel yang dapat membedakan semua baris secara unik. Contoh: Super key dari tabel di atas: (kode_mk), (nama_mk), (kode_mk,nama_mk, semester), (kode_mk,nama_mk, sks), (kode_mk,nama_mk, semester, jml_temu), dan lain-lain. (sks), (semester) & (semester, sks) bukan super key (non key) Kode_MK Nama_MK Semester SKS DU-001 English 2 DU-002 Kalkulus 1 3 IF-001 Algoritma IF-002 Database IF-003 Artificial Intelligence 5 TE-001 Elektronika 4

The Three Keys (cont’d) Cadidate Key: minimal super key, yaitu super key yang tidak mengandung super key yang lain. Contoh: Super key: (kode_mk), (nama_mk), (kode_mk,nama_mk, semester), (kode_mk,nama_mk, sks), (kode_mk,nama_mk, sks, semester), dan lain-lain. Candidate key:(kode_mk) dan (nama_mk) Kode_MK Nama_MK Semester SKS DU-001 English 2 DU-002 Kalkulus 1 3 IF-001 Algoritma IF-002 Database IF-003 Artificial Intelligence 5 TE-001 Elektronika 4

The Three Keys (cont’d) Primary Key: salah satu candidate key yang dipilih (dengan berbagai pertimbangan). Tiap tabel hanya memiliki 1 primary key, namun primary key tersebut bisa saja dibentuk dari beberapa atribut (kolom) Contoh: Super key: (kode_mk), (nama_mk), (kode_mk,nama_mk, semester), (kode_mk,nama_mk, sks), (kode_mk,nama_mk, sks, semester), dan lain-lain. Candidate key:(kode_mk) dan (nama_mk) primary key: (kode_mk) Kode_MK Nama_MK Semester SKS DU-001 English 2 DU-002 Kalkulus 1 3 IF-001 Algoritma IF-002 Database IF-003 Artificial Intelligence 5 TE-001 Elektronika 4

The Three Keys (cont’d) (kode_mk) Primary Key (nama_mk) (kode_mk,nama_mk, semester) Candidate Key (kode_mk,nama_mk, sks) (kode_mk,nama_mk, sks, semester) Super Key dan lain-lain. (semester), (sks), (sks,semester) Non Key Kode_MK Nama_MK Semester SKS DU-001 English 2 DU-002 Kalkulus 1 3 IF-001 Algoritma IF-002 Database IF-003 Artificial Intelligence 5 TE-001 Elektronika 4

Latihan three key Tentukan mana superkey,candidate key, primary key Sebutkan secara bertahap Kode Barang Nama barang Jumlah Harga barang Nama Produsen 123 odol` 3 2000 Unilev 234 Sabun 5 4000 Wing 567 Shampo 8 789 Sikat

Functional Dependencies Functional dependency atau kebergantungan fungsional adalah constraint atau batasan/ ketentuan antara 2 buah himpunan atribut pada sebuah tabel A  B berarti A menentukan B, atau B secara fungsional bergantung kepada A, dimana A dan B adalah satu atau sekumpulan atribut dari tabel T Syarat A  B : Pada sebuah tabel T, jika ada dua baris data atau lebih dengan nilai atribut A yang sama maka baris-baris data tersebut pasti akan memiliki nilai atribut B yang sama. Hal ini tidak berlaku sebaliknya.

Full Functional Dependencies (cont’d) NIM Nama_Mhs Kd_Jur Nama_Jur Kode_MK Nama_MK SKS Nilai 1-01 Tukimin TE Elektro TE-001 Elektronika 3 A DU-001 English 2 2-01 Jamilah IF Informatika IF-001 Algoritma B C 2-02 Maemunah IF-002 Database Beberapa FD dari tabel di atas: FD1: (nim)  (nama_mhs, kd_jur, nama_jur) FD2: (kd_jur)  (nama_jur) FD3: (kode_mk)  (nama_mk, sks) FD4: (nim,kode_mk)  (nilai)

Functional Dependencies Partial Functional Dependency atau kebergantungan fungsional parsial terjadi bila: B  A B adalah bagian dari candidate key Dengan kata lain Jika (B,C) adalah candidate key dan B  A Maka A bergantung secara parsial terhadap (B,C) atau (B,C) menentukan A secara parsial

Functional Dependencies (cont’d) Partial FD (Contoh): Super key: (nim,kode_mk) (nim,nama_mhs,kode_mk) (nim,nama_mhs,kode_mk,nilai) Candidate key: (nim,kode_mk) FD1: (nim)  (nama_mhs) Kesimpulan: (nama_mhs) bergantung kepada (nim,kode_mk) secara parsial (nim,kode_mk) menentukan (nama_mhs) secara parsial NIM Nama_Mhs Kode_MK Nilai 1-01 Tukimin TE-001 A DU-001 2-01 Jamilah IF-001 B C 2-02 Maemunah IF-002

Functional Dependencies (cont’d) Transitive Functional Dependency Jika A  B dan B  C Maka A  C Dengan kata lain: A bergantung secara transitif terhadap C melalui B A menentukan C secara transitif melalui B

Functional Dependencies (cont’d) Transitive FD (Contoh): FD1: (nim)  (nama_mhs, kd_jur, nama_jur) FD2: (kd_jur)  (nama_jur) Kesimpulan: (nama_jur) bergantung secara transitif terhadap (nim) melalui (kd_jur) (nim)  (nama_jur) secara transitif melalui (kd_jur) NIM Nama_Mhs Kd_Jur Nama_Jur 1-01 Tukimin TE Elektro 2-01 Jamilah IF Informatika 2-02 Maemunah

Diketahui studi kasus "KoCiPoliTel" Laporan Simpanan Anggota Carilah bentuk fd nya Tentukan full functional dependency, partial functional dependency dan transitive functional dependency dari kasus berikut : Diketahui studi kasus "KoCiPoliTel" Laporan Simpanan Anggota

` Terima Kasih