Normalisasi 1 Normalisasi 2 Normalisasi 3 BCNF

dokumen-dokumen yang mirip
PERANCANGAN BASIS DATA

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

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

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

NORMALISASI BASIS DATA. Institut Teknologi Sumatera

Desain Database. Dr. Khamami Herusantoso 1/107

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

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

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

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

Perancangan Basis Data

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

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

Teknik Normalisasi. Normalisasi

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

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

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

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

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

DESAIN DATABASE DAN NORMALISASI

Pertemuan 7-8 NORMALISASI

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

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

Tujuan Umum Tujuan Khusus Pokok Bahasan/Materi

Basis Data 1 - TIS3333

SISTEM BASIS DATA AUB SURAKARTA

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

ANALISA RANCANGAN DATABASE

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

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

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

Perancangan Database Bagian II (Normalisasi( Normalisasi) TUJUAN PEMBELAJARAN

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

BAB 7 PENERAPAN BENTUK NORMALISASI

NORMALISASI UNTUK BASIS DATA RELASIONAL

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

Normalisasi Lanjut. I. Review Normalisasi

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

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

PERANCANGAN SISTEM TERINCI DATABASE

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

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

Normalisasi Donny Yulianto, S.Kom

VISUAL PROGRAMMING 2. bangdanu.wordpress.com. By: Danu Wira Pangestu

Modul 9 : Normalisasi 1st NF sampai dengan BCNF

PERANCANGAN SISTEM TERINCI DATABASE

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

Perancangan Basis Data

Teknik Perancangan Basis Data

Database System 4 Normalization

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

Mengotimalisasi redundansi Menghilangkan anomali

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

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

Normalisasi Database

ANALISA RANCANGAN NORMALISASI & DATABASE

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

NORMALISASI. By Mrs Imana Malia Kondou

Pengertian Normalisasi, Jenis-jenis Normalisasi Dan Contoh Penerapannya.

Perancangan Database Bagian I

Konsep Normalisasi dan Anomali Tabel

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

BAB I NORMALISASI DATABASE

Teknik dan Penerapan Normalisasi

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

BAB 6 BENTUK BENTUK NORMALISASI

BAB 7 MERANCANG BASIS DATA

BAGIAN 02 : [SISTEM BASIS DATA] Membahas: 1. Normalisasi 2. Latihan Normalisasi

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

BAB II TINJAUAN PUSTAKA. Menurut Sutabri (2004), sistem adalah sekelompok unsur yang erat

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

BAB II TINJAUAN PUSTAKA. objek-objek yang saling berelasi dan berinteraksi serta hubungan antar

PARADIGMA VOL. IX. NO. 2, APRIL 2007

BAB II TINJAUAN PUSTAKA. hubungannya satu dengan yang lain, yang berfungsi bersama-sama untuk

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

HUBUNGAN PERALATAN PENDUKUNG SISTEM PADA CONTOH KASUS PERANCANGAN SISTEM PENGOLAHAN DATA ORDER PAKAIAN BERBASIS KOMPUTER PADA BINATU KSH

MODEL RELASI DAN NORMALISASI DATABASE

BAB 2 LANDASAN TEORI. pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.

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.

DESAIN DATABASE. Pertemuan 06 3 SKS

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

bergantung pada keberadaan entitas lainnya[9]. relasi yang merekatkan dua entitas adalah bersifat

Perancangan Database Bagian I. Ahmad Hanafi

PERTIMBANGAN MELAKUKAN DENORMALISASI PADA MODEL BASIS DATA RELASI. Gandung Triyono

Pertemuan 2 dan 3 : Tujuan Instruksional Khusus :

di definisikan hanya dengan memperhatikan functional dependencies dan key constrains

PERANCANGAN BASISDATA SISTEM INFORMASI PERSEDIAAN OBAT STUDI KASUS PADA INSTALASI FARMASI RSUD Dr. H. SOEWONDO KENDAL

Basis Data I Danny Kriestanto, S.Kom., M.Eng

NORMALISASI. Data diuraikan dalam bentuk tabel, selanjutnya dianalisis berdasarkan persyaratan tertentu ke beberapa tingkat.

Normalisasi 1 Functional Dependency

SQL DASAR BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

STMIK AMIKOM YOGYAKARTA

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

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

PERTEMUAN 6 TEKNIK NORMALISASI

BAB III ANALISA DAN DESAIN

NORMALISASI. Definisi. Tujuan dari Normalisasi. Proses Normalisasi

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

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

BAB III ANALISIS DAN PERANCANGAN

Transkripsi:

Perancangan SBD dengan Model Relasional Basis Data I Danny Kriestanto, S.Kom., M.Eng Normalisasi 1 Normalisasi 2 Normalisasi 3 BCNF Normalisasi (Ramon, 2004) Merupakan proses langkah demi langkah yang dapat reversibel (dapat dibalik) yang menjadikan sebuah himpunan yang diketahui dari suatu relasi digantikan oleh kumpulan berurutan dari relasirelasi yang memiliki suatu struktur yang lebih sederhana dan biasa. Normalisasi (Hoffer,2002) Sebuah proses normal untuk menentukan atribut mana yang harus dikelompokkan bersamasama di dalam sebuah relasi. Setiap langkah dikenal sebagai suatu bentuk normal, mendefinisikan sebuah himpunan kriteria. Karena reversibel, maka himpunan asli dari relasi dapat dikembalikan tanpa ada informasi yang hilang. Tujuan Normalisasi Normalisasi ditujukan untuk menciptakan relasi yang berstruktur baik, dengan memenuhi kondisi (Kadir,2009): Mengandung redundansi sesedikit mungkin Memungkinkan baris-baris dalam relasi disisipkan, dimodifikasi, dan dihapus tanpa menimbulkan kesalahan atau ketidakkonsistenan Redundansi Data yang disimpan berkali-kali Nama lainnya: duplikasi data 1

Anomali data akan terjadi pada proses insertion, deletion, dan update; yakni proses INSERT, DELETE, dan UPDATE. Namun umumnya hanya ada dua, yakni: UPDATE dan INSERT/DELETE karena yang mengalami anomali DELETE pasti juga akan mengalami anomali INSERT Dibutuhkan analisis tupel pada tabel untuk mengetahui apakah sebuah field/kolom akan mengalami anomali/kehilangan data ataukah tidak. Contoh kasus: PEMASOK_BARANG Kode Nama_Brg Harga Kd_Pemasok Nm_Pemasok Kota T-001 TV SN 14 600000 P22 PT Sumber Jakarta T-002 TV SN 21 950000 P22 PT Sumber Jakarta T-003 TV SS 14 450000 P11 PT Tunas Jaya Surabaya T-004 TV M 34 4500000 P33 PT Mekar Semarang T-005 TV S 24 1200000 P44 PT Holic Semarang Perhatikan tiap-tiap tahap normalisasi! Anomali Penyisipan (INSERT) Kunci ada yang bernilai null Ada data yang perlu diisikan ulang (redundansi tinggi) Anomali Pengubahan (UPDATE) Apabila ada satu sel yang berubah, tupel seluruh tabel dengan data yang mirip juga harus diubah (kerancuan data). Contoh: ada perusahaan yang pindah alamat Anomali Penghapusan (DELETE) Saat data dihapus ada data lain yang ikut hilang BARANG Kode_Barang Nama_Barang Harga_Jual Kode_Pemasok T-001 TV SN 14 600000 P22 T-002 TV SN 21 950000 P11 T-003 TV SS 14 450000 P22 T-004 TV M 34 4500000 P33 T-005 TV S 12 1200000 P44 PEMASOK Kode_Pemasok Nama_Pemasok Kota P11 PT Tunas Jaya Surabaya P22 PT Sumber Jakarta P33 PT Mekar Semarang P44 PT Holic Semarang Dependensi Dependensi sering digunakan dalam normalisasi. Ada beberapa jenis: Dependensi fungsional Dependensi sepenuhnya Dependensi parsial Dependensi total Dependensi transitif Sering kali cukup disebut dependensi saja. Merupakan kekangan antara dua buah atribut atau dua buah himpunan atribut. Contoh: R(A, B, ) B memiliki dependensi fungsional terhadap A apabila nilai A memiliki hubungan satu nilai dengan B 2

Notasi: A B Contoh kasus: PEMASOK_BARANG Dapat dibaca sebagai: A panah B, A menentukan B, atau B tergantung secara fungsional pada A Item di sebelah kiri disebut penentu/determinan, sebelah kanan disebut dependen ( yang bergantung ) Kode Nama_Brg Harga Kd_Pemasok Nm_Pemasok Kota T-001 TV SN 14 600.000 P22 PT Sumber Jakarta T-002 TV SN 21 950.000 P22 PT Sumber Jakarta T-003 TV SS 14 450.000 P11 PT Tunas Jaya Surabaya T-004 TV M 34 4.500.000 P33 PT Mekar Semarang T-005 TV S 24 1.200.000 P44 PT Holic Semarang Berdasarkan tabel tersebut, diperoleh: Kode Nama_Brg Kode Harga Kode Kd_Pemasok Kode Nm_Pemasok Catatan: Bagaimana kalau dibalik? Harga tidak menentukan barangnya, (karena banyak barang mempunyai harga yang sama); tapi satu jenis barang punya satu harga. Nama_Brg Kode Nm_Pemasok Kode_Pemasok Setiap Kode pasti berhubungan dengan satu Nama_Brg begitu juga antara Kode dan Harga. Begitu seterusnya. Misalnya: T-001 hanya cocok dengan 1 barang, yaitu TV SN 14 Perhatikan bagian ini: Kode Nama_Brg Kode Harga Kode Kd_Pemasok Kode Nm_pemasok Ternyata, Kode menentukan lebih dari satu atribut. Notasinya dapat diganti sebagai berikut: Kode {Nama_Brg, Harga, Kd_Pemasok} Kode Nm_Pemasok (yang ini bagaimana?) Contoh lain: DOSEN_PENDIDIKAN No_Dosen Nama_Dosen Jns_Klmn Strata Lulus_Thn D41 Lintang Pria S1 1987 D41 Lintang Pria S2 1990 D42 Murni Wanita S1 1988 D42 Murni Wanita S2 1990 D42 Murni Wanita S3 1999 D43 Rio Pria S1 1994 Sebuah atribut bisa tergantung lebih dari satu atribut. Contoh dalam kasus ini: {No_Dosen, Strata} Lulus_Thn 3

Dependensi Sepenuhnya {No_Dosen, Strata} Lulus_Thn No_Dosen saja tidak menentukan Lulus_Thn, karena untuk D41 saja ada 2 tahun lulus. Tapi pasangan No_Dosen dan Strata hanya memiliki satu nilai tahun lulus. Contohnya: {D42, S3} 1999 Dikatakan memiliki dependensi sepenuhnya jika memiliki dua syarat berikut: 1. B mempunyai dependensi fungsional terhadap A 2. B tidak mempunyai dependensi terhadap bagian dari A Dependensi Sepenuhnya Lulus_Thn tidak bergantung pada No_Dosen saja karena: 1. Untuk dosen D41 memiliki 2 nilai Lulus_Thn yaitu: 1987 dan 1990. 2. Strata S1 memiliki 3 nilai, yakni: 1987, 1988, 1994 Dengan demikian, Lulus_Thn bergantung sepenuhnya terhadap gabungan No_Dosen dan Strata, dan tidak bergantung pada bagian dari {No_Dosen, Strata}. Oleh karena itu Lulus_Thn dikatakan memiliki dependensi sepenuhnya terhadap {No_Dosen, Strata} Dependensi Parsial Syaratnya adalah sebagai berikut: 1. B adalah atribut bukan kunci primer dan A adalah kunci primer 2. B memiliki dependensi terhadap bagian dari A Contoh: Pada tabel DOSEN_PENDIDIKAN memiliki kunci primer {No_Dosen, Strata}. Atribut Jns_Klmn bergantung pada No_Dosen namun tidak pada Strata, dikatakan memiliki dependensi parsial. Dependensi Total Dikatakan dependensi total jika memenuhi syarat berikut: 1. B memiliki dependensi fungsional terhadap A 2. A mempunyai dependensi fungsional terhadap B Notasinya : A B Seperti pada contoh : Nm_Pemasok Kd_Pemasok Dapat ditulis : Kd_Pemasok Nm_Pemasok Dependensi Transitif Dikatakan memiliki dependensi transitif jika: 1. C memiliki dependensi fungsional terhadap B 2. B memiliki dependensi fungsional terhadap A Notasinya : A B C Pada contoh di depan: Kode Kd_Pemasok Kode Nm_Pemasok Jadi ketiga dependensi ini sebenarnya dapat ditulis: Kode Kd_Pemasok Nm_Pemasok 4

Tahapan Normalisasi 1. 1 st Normal Form Atribut dengan nilai ganda (atau kelompok yang berulangulang) dihilangkan, menyisakan nilai tunggal (atau juga null) pada setiap cell. 2. 2 nd Normal Form Dependensi parsial dihilangkan 3. 3 rd Normal Form Dependensi transitif dihilangkan 4. Boyce/Codd Normal Form Semua anomali yang tersisa dari dependensi fungsional dihilangkan 5. 4 th Normal Form Dependensi nilai ganda dihilangkan 6. 5 th Normal Form Anomali yang tersisa dihilangkan 1NF (First Normal Form) Sebuah relasi sudah berada di 1NF jika tidak ada satu pun atribut dengan nilai ganda. Jika Tabel dikonversi dari ERD, otomatis sudah tidak ada nilai ganda (lihat cara konversi data dengan nilai ganda) Data Tidak Ternormalisasi Data 1NF No_peg Nama_peg No_klien Nama_klien E37 Nina K05 Martini K08 Anton K02 Sarmini E38 Tono K04 Eka K10 Andin K24 Buyung E39 Hadi K06 Mitha K24 Buyung K90 Indah No_peg Nama_peg No_klien Nama_klien E37 Nina K05 Martini E37 Nina K08 Anton E37 Nina K02 Sarmini E38 Tono K04 Eka E38 Tono K10 Andin E38 Tono K24 Buyung E39 Hadi K06 Mitha E39 Hadi K24 Buyung E39 Hadi K90 Indah 2NF (Second Normal Form) Syarat dari 2NF adalah: Sudah berada dalam bentuk 1NF Setiap atribut bukan kunci primer telah bergantung sepenuhnya pada kunci primer. Hilangkan Dependensi Parsial, langkahnya: Ubahlah tiap dependensi parsial menjadi relasi, dengan kunci primer sebagai penentunya (baca lagi pengertian dependensi parsial) Ubah dependensi yang terkait langsung dengan kunci primer sebagai relasi tersendiri dan kunci primernya adalah kunci primer dalam relasi semula. Diandaikan terdapat sebuah relasi R dengan: R(A,B,C,D) Kunci Primer (A,B) A D Maka relasi R dapat digantikan dengan dua buah relasi R1 dan R2 sebagai berikut: R1(A,D) dengan Primary Key-nya (A) R2(A,B,C) dengan Primary Key-nya (A,B) dan Foreign Key-nya (A) Referensi R1 5

Sehingga contoh kasus pada slide 27 dapat diubah menjadi: PEGAWAI(No_peg, Nama_peg) KLIEN(Id_klien, Nama_klien) PEGAWAI_KLIEN(No_Peg, Id_Klien) PEGAWAI No_peg Nama_peg E37 Nina E37 Nina E37 Nina E38 Tono E38 Tono E38 Tono E39 Hadi E39 Hadi E39 Hadi KLIEN Id_klien K05 K08 K02 K04 K10 K24 K06 K24 K90 Nama_klien Martini Anton Sarmini Eka Andin Buyung Mitha Buyung Indah 3NF (Third Normal Form) PEGAWAI_KLIEN No_peg Id_klien E37 K05 E37 K08 E37 K02 E38 K04 E38 K10 E38 K24 E39 K06 E39 K24 E39 K90 Tips: pisahkan entitas objek dengan semua atribut yang melekat padanya dan buat tabel penghubung Syarat dari bentuk normal ketiga adalah: Sudah berada dalam bentuk normal kedua Tidak ada dependensi transitif (baca lagi pengertian tentang dependensi transitif) Mudahnya, dependensi transitif di dalam sebuah relasi adalah sebuah dependensi fungsional di antara dua atau lebih atribut yang bukan kunci primer Menghilangkan Dependensi Transitif Bila terdapat sebuah relasi R R(A, B, C) dengan kunci primer (A) B C Maka relasi R dapat digantikan dengan dua buah relasi R1 dan R2 sebagai berikut: R1(B, C) dengan kunci primer (B) R2(A, B) dengan kunci primer (A) dan kunci tamu (B) referensi R1 Menghilangkan Dependensi Transitif Jika diaplikasikan untuk tabel PEMASOK_BARANG pada slide 14, dapat dihasilkan: PEMASOK(Kd_Pemasok, Nm_Pemasok, Kota) BARANG(Kode, Nama_Brg, Harga, Kd_Pemasok) 6

BCNF (Boyce-Codd Normal Form) Suatu relasi sudah dalam BCNF bila semua dependensi/ketergantungan dalam relasi tersebut hanya terhadap kunci. BCNF disebut juga sebagai 3,5NF dan jarang terjadi karena pada umumnya 3NF sudah cukup. 7