Normalisasi basis data
This presentation is the property of its rightful owner.
Sponsored Links
1 / 37

Normalisasi Basis Data PowerPoint PPT Presentation


  • 99 Views
  • Uploaded on
  • Presentation posted in: General

Normalisasi Basis Data. Proses Rancangan Database (review). Mengumpulkan kebutuhan user/business Mengembangkan E-R Model berdasarkan kebutuhan user/business Konversikan E-R Model ke himpunan relasi ( tabel ) Normalisasikan relasi untuk menghilangkan anomali

Download Presentation

Normalisasi Basis Data

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Normalisasi basis data

Normalisasi Basis Data


Proses rancangan database review

Proses Rancangan Database (review)

  • Mengumpulkankebutuhan user/business

  • Mengembangkan E-R Model berdasarkankebutuhan user/business

  • Konversikan E-R Model kehimpunanrelasi (tabel)

  • Normalisasikanrelasiuntukmenghilangkananomali

  • Implementasikanke database denganmembuat table untuksetiaprelasi yang sudahternormalisasi


Tujuan normalisasi

TujuanNormalisasi

  • Optimalisasistruktur-strukturtabel

  • Meningkatkankecepatan

  • Menghilangkanpemasukan data yang sama

  • Lebihefisiendalampenggunaan media penyimpanan

  • Mengurangiredundansi

  • Menghindarianomali (insertion anomalies, deletion anomalies, update anomalies).

  • Integritas data yang ditingkatkan


Normalisasi

Normalisasi

  • Normalisasi merupakan sebuah teknik dalam logical desain sebuah basis data, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redudansi)

  • Tahap Normalisasi dimulai dari tahap paling ringan (1NF) hingga paling ketat (5NF)

  • Biasanya hanya sampai pada tingkat 3NF atau BCNF karena sudah cukup memadai untuk menghasilkan tabel-tabel yang berkualitas baik.


Normalisasi1

Normalisasi

Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi 3 kriteria sbb:

Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.

Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation).

Tidak melanggar Boyce-Code Normal Form (BCNF) (-akan dijelaskan kemudian-)


Normalisasi2

Normalisasi

Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggar Bentuk Normal tahap ketiga (3rd Normal Form / 3NF).


Tabel universal

Tabel Universal

Tabel Universal (Universal / Star Table)  sebuah tabel yang merangkum semua kelompok data yang saling berhubungan, bukan merupakan tabel yang baik.

Misalnya:


Tabel universal1

Tabel Universal


Functional dependency ketergantungan fungsional

Functional Dependency / Ketergantungan Fungsional

  • Notasi: A  B

    A dan B adalah atribut dari sebuah tabel. Berarti secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama.

  • Notasi: A  B atau A x B

    Adalah kebalikan dari notasi sebelumnya.


Functional dependency

Functional Dependency

Contoh tabel nilai


Functional dependency1

Functional Dependency

Functional Dependency dari tabel nilai

  • Nrp  namaMhs

    Karena untuk setiap nilai nrp yang sama, maka nilai namaMhs juga sama.

  • {Namakul, nrp}  NiHuruf

    Karena attribut Nihuruf tergantung pada Namakul dan nrp secara bersama-sama. Dalam arti lain untuk Namakul dan nrp yang sama, maka NiHuruf juga sama, karena Namakul dan nrp merupakan key (bersifat unik).

  • NamaKul  nrp

  • Nrp  NiHuruf


Lossless join decomposition

Lossless – Join Decomposition

  • Pada tahap normalisasi sering kali terjadi pemecahan table kedalam bentuk dua atau lebih relasi / dekomposisi.

  • Syarat : Tidak ada informasi yang hilang ketika suatu relasi dipecah menjadi relasi-relasi lain.


Lossless join decomposition1

Lossless – Join Decomposition

Dibentuk kedalam dekomposisi tak hilang menjadi :

Contoh :

Pada relasi awal dapat diketahui informasi sebagai berikut : 95001 adalah ANDI program studi Ekonomi. Setelah proses dekomposisi tak hilang hasilnya adalah sama 95001 adalah ANDI dan 95001 program studi Ekonomi.


Bukan lossless join decomposition

Bukan Lossless – Join Decomposition

Dibentuk kedalam dekomposisi hilang menjadi :

Contoh :

Pada relasi awal dapat diketahui informasi sebagai berikut : 95001 adalah ANDI program studi Ekonomi. Setelah proses dekomposisi hilang hasilnya adalah 95001 bernama ANDI, tetapi ANDI dengan program studi Ekonomi atau Fisika?


Bentuk bentuk normal

Bentuk-bentuk Normal

  • Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)

  • Bentuk Normal Tahap Kedua (2nd Normal Form / 2NF)

  • Bentuk Normal Tahap (3rd Normal Form / 3NF)

  • Boyce-Code Normal Form (BCNF)

  • Bentuk Normal Tahap (4th Normal Form / 4NF)

  • Bentuk Normal Tahap (5th Normal Form / 5NF)


Bentuk normal tahap pertama 1st normal form 1nf

Bentuk Normal Tahap Pertama (1st Normal Form / 1NF)

  • Bentuk normal 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak (multivalued attribute), atribut composite atau kombinasinya dalam domain data yang sama.

  • Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi)


Contoh 1

Contoh 1 :

Misal data mahasiswa sbb:

Apakah tabel di atas sudah memenuhi syarat 1NF ?


Normalisasi basis data

1NF


Contoh 2 composite

Contoh 2 (composite)

JadwalKuliah

  • Dimana nilai pada atribut jadwal berisi gabungan antara Hari dan Jam.

  • Jika asumsi hari dan jam memegang peranan penting dalam sistem basis data, maka atribut Jadwal perlu dipisah sehingga menjadi JadwalHari dan JadwalJam sbb:

JadwalKuliah


Bentuk normal tahap kedua 2nd normal form

Bentuk Normal Tahap Kedua (2nd Normal Form)

  • Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF, dan semua atribut selain primary key, secara utuh memiliki Functional Dependency pada primary key.

  • Sebuah tabel tidak memenuhi 2NF, jika ada atribut yang ketergantungannya (Functional Dependency) hanya bersifat parsial saja (hanya tergantung pada sebagian dari primary key)

  • Jika terdapat atribut yang tidak memiliki ketergantungan terhadap primary key, maka atribut tersebut harus dipindah atau dihilangkan


Contoh 11

Contoh 1 :

Misal data mahasiswa sbb:

Apakah tabel di atas sudah memenuhi syarat 1NF ?

Apakah tabel di atas sudah memenuhi syarat 2 NF ?


Normalisasi basis data

2 NF

Didekomposisi menjadi:

  • Tabel Mahasiswa

  • Tabel Hobi


Contoh 2

Contoh 2 :

Tabel berikut memenuhi 1NF tapi tidak termasuk 2NF:

  • Tidak memenuhi 2NF, karena {Npm, mk_kode}sebagai primary key, sedangkan:

    {Npm, mk_kode} mhs_nama

    {Npm, mk_kode} mhs_alamat

    {Npm, mk_kode} mk_nama

    {Npm, mk_kode} mk_sks

    {Npm, mk_kode} nihuruf

  • Tabel di atas perlu didekomposisi menjadi beberapa tabel yang memenuhi syarat 2NF


Contoh

Contoh

Functional dependencynya sbb:

Npm  {mhs_nama, mhs_alamat} (fd1)

{Npm, mk_kode} nihuruf (fd2)

Mk_kode  {mk_nama, mk_sks} (fd3)

fd1 (Npm, mhs_nama, mhs_alamat) Tabel Mahasiswa

fd2 (Npm, mk_kode, nihuruf) Tabel Nilai

fd3(Npm, mk_nama, mk_sks) Tabel MataKuliah


Bentuk normal tahap ketiga 3rd normal form 3nf

Bentuk Normal Tahap Ketiga (3rd Normal Form /3NF)

  • Bentuk normal 3NF terpenuhi jika telah memenuhi bentuk 2NF, dan jika tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya.

  • Untuk setiap Functional Dependency dengan notasi X  A, maka:

  • X harus menjadi superkey pada tabel tsb.

  • A merupakan bagian dari primary key pada tabel tsb.


Contoh1

Contoh

Tabel berikut memenuhi 2NF, tapi tidak memenuhi 3NF:

Mahasiswa

  • karena masih terdapat atribut non primary key (yakni kota dan Provinsi) yang memiliki ketergantungan terhadap atribut non primary key yang lain (yakni kodepos):

kodepos  {Provinsi, kota}

  • Sehingga tabel tersebut perlu didekomposisi menjadi:

Mahasiswa (Npm, nama, alm_jalan, kodepos)

Wilayah (kodepos, provinsi, kota)


Boyce code normal form bcnf

Boyce-Code Normal Form (BCNF)

  • Bentuk BCNF terpenuhi dalam sebuah tabel, jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk:X  Y maka X adalah super key

  • Semua kunci utama adalah kunci kandidat yang bersifat unik


Bentuk normal tahap keempat 4th normal form 4nf

Bentuk Normal Tahap Keempat (4th Normal Form /4NF)

  • Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute

  • Untuk setiap multivalued dependencies (MVD) juga harus merupakan functional dependencies


Contoh2

Contoh

Misal, tabel berikut tidak memenuhi 4NF :

Setiap employee dapat bekerja di lebih dari project dan dapat memiliki lebih dari satu skill. Untuk kasus seperti ini tabel tersebut harus di-dekomposisi menjadi :

(Employee, Project)

(Employee, Skill)


Bentuk normal tahap keempat 5th normal form 5nf

Bentuk Normal Tahap Keempat (5th Normal Form /5NF)

  • Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decomposition menjadi tabel-tabel yg lebih kecil.

  • Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula


Latihan normalisasi

Latihan Normalisasi


Soal latihan 1

Soal Latihan (1)

Bagaimana bentuk normalisasinya?


Pembahasan 1

Pembahasan(1)

Bentuk Normal Pertama / 1NF


Pembahasan 11

Pembahasan(1)

Bentuk Normal Kedua / 2NF

Tabel Transaksi

Tabel Order


Soal latihan 2

Soal Latihan(2)

  • Apakah sudah memenuhi bentuk normal pertama

  • Bagaimana bentuk normalisasi tabel tersebut?


Soal latihan 3

Soal Latihan(3)

  • Apakah sudah memenuhi bentuk normal pertama

  • Bagaimana bentuk normalisasi tabel tersebut?


Latihan

Latihan

  • Berikutinicontoh basis data yang belumternormalisasi :

    Masalah :

    • Tidakperluberulang-ulang kali menyimpan data alamat, namabarang, danharga.

    • Redundancydapatmenimbulkanmasalah, yaitu data yang tidakkonsisten (pensile)


  • Login