DB Normalisasi

download DB Normalisasi

of 39

Transcript of DB Normalisasi

  • 8/16/2019 DB Normalisasi

    1/39

      1

    PENORMALAN

  • 8/16/2019 DB Normalisasi

    2/39

      2

    Penormalan adalah satu proses pengumpulan

    atribut-atribut ke dlm hubungan-hubungantertentu bagi menghasilkan satu set hubungan

    yang mempunyai ciri-ciri yang baik sesuai dengan

    kehendak suatu organisasi

    !u"uan penormalan adalah utk mengurangkan

    le#ahan data dan mengelakkan drp berlakunya

    anomali-anomali

    Penormalan berkait rapat dengan konsep kuncidan kekangan ke#iba#aan

    $enis kekangan ke#iba#aan yang paling penting

    ialah kebersandaran %ungsian &'()

  • 8/16/2019 DB Normalisasi

    3/39

  • 8/16/2019 DB Normalisasi

    4/39

      0

    Kebersandaran Fungsian

    Perhubungan di antara atribut-atribut dalamsatu hubungan

    Melibatkan perhubungan banyak ke satu&M1) dari satu set atribut ke satu set atribut

    lain dalam satu hubungan $ika A dan , ialah atribut atau set atribut bagi

    hubungan , adalah bersandar %ungsi atas A

    &disimbolkan A

     ,) sekiranya setiap nilai Adalam adalah dikaitkan dengan hanya satunilai , dalam )

    '( boleh ditun"ukkan dalam gambara"ah di ba#ah

  • 8/16/2019 DB Normalisasi

    5/39

      /

    $ika , bersandar %ungsi atas A dalam satu

    hubungan A,3 ini bermakna bila duarangkap mempunyai nilai A yang samanilai , "uga mestilah sama

    !etapi bagi satu nilai , mungkin terdapat

     beberapa nilai A yang tidak sama Perhubungan daripada A ke , adalah M1

    A , A ,atau

  • 8/16/2019 DB Normalisasi

    6/39

      4

    3th

    diberi satu skima hubungan 5!A(-PRO$E' 

    STAF-PROJEK (NoStaf, NoProje, Peruntuan!

    5eorang sta% hanya boleh membuat satu pro"ek

    tetapi satu pro"ek boleh dikongsi oleh beberapa

    orang sta%

    5etiap pro"ek diberi satu peruntukan  No5ta% dan NoPro"ek adalah unik

  • 8/16/2019 DB Normalisasi

    7/39  +

     NoPro"ek bersandar %ungsi atas No5ta%tetapi sebaliknya tidak benar iaitu No5ta%

    tidak bersandar %ungsi atas NoPro"ek

    Peruntukan bersandar %ungsi atas NoPro"ek&sebenarnya bersandar %ungsi atas No5ta%)

     No5ta% NoPro"ek Peruntukan

  • 8/16/2019 DB Normalisasi

    8/39  6

    Kun"i dan Kebersandaran Fungsian

    'unci primer ialah satu atribut atau satu set atribut

    yang digunakan untuk mengecam secara unik semuarangkap dalam suatu hubungan

    5emua atribut lain adalah bersandar %ungsi atas atribut

    kunci primer

    '( dalam 5!A(-PRO$E' boleh disenaraikan seperti

     berikut

     No5ta% Pro"ek NoPro"ek Peruntukan No5ta% Peruntukan

     Atau secara ringkasnya No5ta% &NoPro"ek Peruntukan) NoPro"ek  Peruntukan

     

    5emua atribut bukan kunci adalah bersandar %ungsi

    atas kunci primer

  • 8/16/2019 DB Normalisasi

    9/39  .

    Atribut NoPro"ek menentukan secara %ungsian

    atribut Peruntukan tetapi ia bukan kunci primerkerana No5ta% tidak bersandar %ungsi di atasnya

     NoPro"ek dikenali sebagai atribut penentu

    Atribut penentu menentukan secara %ungsian satu

    atau lebih atribut lain tetapi ia tidak semestinyasatu kunci primer

    '( yang diperbincangkan di dalam topik ini adalah'( yang tidak 7tri8ial9

    5uatu '( adalah 7tri8ial9 sekiranya atribut disebelah kanan anak panah adalah satu set subset&tidak semestinya subset 7proper9) bagi atribut disebelah kiri

  • 8/16/2019 DB Normalisasi

    10/39  1:

    #asala$ le%a$an dalam $ubungan

    Pengulangan atau le#ahan data

    Anomali kemaskinian

    &t$ masala$ le%a$an data '

    PEL;RE< &NoPela"ar NamaPel Ma"or

    =nit,eri"a>ah 'od'ursus Nama'ur =nit

    Mata;red)

  • 8/16/2019 DB Normalisasi

    11/39  11

     NoPela"ar NamaPel Ma"or =nit

    ,eri"a>ah

    'od

    'ursus

     Nama'ur =nit Mata

    ;red

    P1:/: A>ura 5ains

    'omputer 

    116 5'::1 Penghantar  

    5istem

    2 2/

    P1:/: A>ura 5ains

    'omputer 

    116 5'::2 5istem'omputer 

    0 *:

    L211/ 3hong 5istemMaklumat

    12/ 5M1:: 5istemMaklumat

    0 *:

    L021* 'arim 'e"uruteraanPerisian

    1*: 'P222 3?? 0 *:

    P2:2: @arina 5istem

    Maklumat

    12/ 5M1:: 5istem

    Maklumat

    0 */

    P0::: Ann 5istemMaklumat

    12/ 5M1:: 5istemMaklumat

    0 2:

    Jadual ' Satu Ketiaan )ubungan PE*+RE

  • 8/16/2019 DB Normalisasi

    12/39  12

    ,erdasarkan "adual yang ditun"ukkan maklumat

    A>ura diulang bagi setiap kursus yang diambil Maklumat kursus 5istem Maklumat diulang bagi

    setiap pela"ar yang mengambilnya

    Pemba>iran ruang storan bagi "adual asas dan

    mendedahkannya kepada keadaan

    ketakselarasan data

     Anomali 'emaskinian

    1 Anomali 5isipan2 Anomali apusan

    * Anomali =bahsuaian

  • 8/16/2019 DB Normalisasi

    13/39  1*

    Anomali Sisi.an

    'eadaan yang tidak diingini ke"anggalan atau

    masalah yang dihadapi semasa cuba menyisip satu

    rangkap baru ke dalam "adual yang tidak

    mempunyai struktur yang sempurna ,erlaku dalam dua keadaan

    a) Menyisip rekod baru yang sebahagian maklumat

    mengenainya telah #u"ud dalam "adual

     b) Menyisip rangkap baru yang sebahagian

    maklumat belum #u"ud dalam "adual mungkin

    tidak dapat menyisipnya langsung

  • 8/16/2019 DB Normalisasi

    14/39  10

    / Anomali $a.usan

    'eadaan di mana apabila satu rangkapdihapuskan daripada suatu hubungan

    ter"adi kehilangan maklumat yang masih

    diperlukan 3th apabila rangkap pela"ar L021*

    dihapuskan maklumat mengenai kursus

    'P222 "uga terhapus Maklumat inimungkin diperlukan utk disimpan di dalam

     "adual kerana inilah satu-satunya rangkap

    yang #u"ud mengenai kursus ini

  • 8/16/2019 DB Normalisasi

    15/39

  • 8/16/2019 DB Normalisasi

    16/39  14

    Peng$uraian dan Penormalan

    Penghuraian adalah proses memecahkan suatuhubungan kepada hubungan-hubungan yang lebihkecil

    Penormalan adalah proses menghuraikan hubungan-

    hubungan yang bermasalah mengikut panduan atauciri-ciri tertentu

    Penormalan dilaksanakan langkah demi langkahiaitu dari satu bentuk normal ke satu bentuk normal

    yang lebih tinggi 5etiap bentuk normal mempunyai syarat-syarat

    kelayakan tertentu yang mesti dilepasi sebelumhubungan itu diu"i untuk bentuk normal yang lebih

    tinggi

  • 8/16/2019 DB Normalisasi

    17/39  1+

    2entu Normal Pertama (NF!

    ubungan tak ternormal ialah satu "adual yangmengandungi satu atau lebih kumpulan berulang

     Kumpulan berulang  ialah #u"udnya nilai atribut yang

    tidak atomik dalam satu-satu rangkap

    ubungan ternormal adalah semua hubungan yang

     berada di dalam salah satu daripada + bentuk normal

    5uatu hubungan dikatakan dalam bentuk normal

     pertama sekiranya setiap atribut dalam setiap rangkapadalah terdiri daripada satu nilai atomik

  • 8/16/2019 DB Normalisasi

    18/39  16

     NoPela"ar NamaPel Ma"or =nit,eri"a>ah 'od'ursus Nama'ur =nit Mata;red

    P1:/: A>ura 5' 116 5'::1 Peng

    5istem

    2 2/

    5'::2 5istem

    'omputer 

    0 *:

    L211/ 3hong 5M 12/ 5M::1 5istem

    Maklumat

    0 *:

    Masalah 5atu kemasukan NoPela"ar P1:/: sepadan dengan lebih

    satu masukan 'od'ursus

    Atasi ubungan !ernormal boleh diperolehi dengan ulang rangkap

     bagi pela"ar P1:/: seperti dalam $adual !ernormal

    Jadual / ' Jadual Ta Ternormal

  • 8/16/2019 DB Normalisasi

    19/39  1.

     NoPela"ar NamaPel Ma"or =nit,eri"a>ah 'od'ursus Nama'ur =nit Mata;red

    P1:/: A>ura 5' 116 5'::1 Peng

    5istem

    2 2/

    P343 A5ura SK 6 5'::2 5istem

    'omputer 

    0 *:

    L211/ 3hong 5M 12/ 5M::1 5istem

    Maklumat

    0 *:

    Jadual 0 ' Jadual Ternormal

  • 8/16/2019 DB Normalisasi

    20/39  2:

    !erdapat / .endeatan untuk menukarkan satu "adual

    tak ternormal kepada satu "adual atau hubungan dalam bentuk normal pertama

    1 ,uang kumpulan berulang dengan menyisip semuladata-data yang tidak berulang ke dalam la"ur-la"uryang berkenaan bagi setiap baris rangkap nilai

     berulang

    2 3amkan satu kunci primer bagi "adual takternormal 'eluarkan bhg kumpulan berulang dansalin ke dlm satu "adual baru bersama-sama kunci

     primer 'emudian camkan kunci primer bagi kedua-dua hubungan

  • 8/16/2019 DB Normalisasi

    21/39

      21

    Penghuraian 'epada 1N(

    $adual !ernormal boleh dihuraikan kepada dua

     "adual iaitu "adual PELA$AR dan '=R5=5

    'unci primer bagi "adual asal yang tak ternormal

    ialah NoPelajar dan KodKursus a akan diteruskan men"adi kunci primer bagi

     "adual yang baru dihasilkan

    'unci primer bagi "adual PELA$AR adalah NoPela"ar

  • 8/16/2019 DB Normalisasi

    22/39

      22

     NoPela"ar NamaPel Ma"or =nit,eri"a>ah

    P1:/: A>ura 5ains

    'omputer 

    116

    L211/ 3hong 5istemMaklumat

    12/

     NoPela"ar 'od'ursus Nama'ur =nit Mata;red

    P1:/: 5'::1 Penghantar 5istem 2 2/

    P1:/: 5'::2 5istem 'omputer 0 *:

    L211/ 5M1:: 5istem Maklumat 0 *:

    PE*AJAR  & NoPelajar NamaPel Ma"or =nit,eri"a>ah)

    K1RS1S &NoPelajar KodKursus Nama'ur =nit Mata;red)

    Jadual 7' Peng$uraian Jadual e.ada NF

  • 8/16/2019 DB Normalisasi

    23/39

      2*

    2entu Normal Kedua (/NF!

    ,ergantung kepada konsep kebersandaran%ungsian penuh

    Kebersandaran Fungsian Penu$

    5ekiranya A dan , adalah atribut-atribut bagi

    hubungan , dikatakan bersandar %ungsi

     penuh atas A sekiranya , adalah bersandar%ungsi atas A tetapi tidak bersandar %ungsi

    atas mana-mana subset proper bagi A

  • 8/16/2019 DB Normalisasi

    24/39

      20

     NoPela"ar 

    'od'ursus

    Mata;red

     NamaPel

    Ma"or 

    =nit,eri"a>ah

     Nama'ur 

    =nit

    Raja$ ' KF bagi )ubungan PE*+RE

  • 8/16/2019 DB Normalisasi

    25/39

  • 8/16/2019 DB Normalisasi

    26/39

      24

    5ambunganB

    Mata;red bersandar %ungsi atas keseluruhan kunci primer manakala atribut lain bersandar %ungsi atashanya sebahagian drp kunci primer iaitu sama adaatas NoPela"ar atau 'od'ursus

    'eadaan ini dikenali sebagai ebersandaranfungsian se.ara

    nilah punca masalah sebenar hubungan PEL;RE

  • 8/16/2019 DB Normalisasi

    27/39

      2+

    Tarif /NF

    5uatu hubungan adalah dalam 2N(sekiranya ia berada dalam 1N( dan semuaatribut bukan kunci primer bersandar penuh

    atas kunci primer 5yarat bentuk normal kedua hanya perlu

    diu"i ke atas hubungan yang kunci primernya ialah kunci rencam

    5uatu hubungan ternormal yang mempunyaikunci primer tunggal adalah secaraautomatik berada dalam 2N(

  • 8/16/2019 DB Normalisasi

    28/39

      26

    Penghuraian 'epada 2N(

    ubungan PEL;RE< perlu dihuraikansupaya tiada kebersandaran %ungsiansepara dan sekaligus menukar kepada 2N(

    Mata;red bersandar penuh atas kunci primer

    &NamaPel Ma"or =nit,eri"a>ah) bersandar

    %ungsi separa atas kunci NoPela"ar  &Nama'ur =nit) bersandar separa atas

    kunci 'od'ursus

  • 8/16/2019 DB Normalisasi

    29/39

      2.

    uraikan PEL;RE< kepada tiga hubungan seperti berikut

    ;REah)

    '=R5=5 &KodKursus, Nama'ur =nit)

    !iada lagi #u"ud kebersandaran separa semuaatribut bukan kunci primer bersandar penuh ataskunci primer

  • 8/16/2019 DB Normalisasi

    30/39

      *:

    'od'ursus Nama'ur =nit

    5'::1 Penghantar 5istem 2

    5'::2 5istem 'omputer 0

    5M1:: 5istem Maklumat 0

    'P222 3?? 0

    K1RS1S

     NoPela"ar 'od'ursus Mata;red

    P1:/: 5'::1 2/

    P1:/: 5'::2 *:

    L021* 'P222 *:

    P2:2: 5M1:: *:

    +RE

     NoPela"ar NamaPel Ma"or =nit,eri"a>ah

    P1:/: A>ura 5ains 'omputer 116

    L211/ 3hong 5istem Maklumat 12/

    L021* 'arim 'e"uruteraan Perisian 1*:

    P2:2: @arina 5istem Maklumat 12/

    P0::: Ann 5istem Maklumat 12/

    PE*AJAR 

    Jadual 4 ' &onto$ Ketiaan 2agi )ubungan alam / NF

  • 8/16/2019 DB Normalisasi

    31/39

      *1

    2entu Normal Ketiga (0NF!

    !akri%an *N( 5uatu hubungan adalah dalam *N(sekiranya ia berada dalam 2N( dan tiada atribut

     bukan kunci primer bersandar transitif  atas kunci primer

    'ebersandaran transiti% berlaku apabila #u"udsekurang-kurangnya tiga atribut A , dan 3 dalamsatu hubungan hinggakan "ika 3 bersandar %ungsiatas , dan , bersandar %ungsi atas A maka 3

     bersandar %ungsi atas A secara transiti% melalui ,Cdengan syarat A tidak bersandar %ungsi atas , atau3

  • 8/16/2019 DB Normalisasi

    32/39

      *2

    ubungan 2N( boleh ditukar kepada *N( dengan

    menghuraikannya kepada hubungan-hubungan baru supayakebersandaran transiti% tidak #u"ud lagi

    Panduan

    1 'enalpasti kebersandaran transiti% dan camkan penentuyang bukan kunci primer

    2 'umpulkan atribut yang bersandar transiti% bersama satusalinan penentunya ke dalam satu hubungan baruAtributyang tinggal dikumpulkan sebagai satu hubungan baru

    * ,agi satu hubungan dengan atribut A , dan 3 di mana

    A

     , dan ,

    3 maka huraikan kepada 1 dan 2dengan skima

    1 &A ,)

    2 &, 3)

  • 8/16/2019 DB Normalisasi

    33/39

      **

     NoPela"ar NamaPel Ma"or =nit,eri"a>ah

    P1:/: A>ura 5ains 'omputer 116

    L211/ 3hong 5istem Maklumat 12/

    L021* 'arim 'e"uruteraan Perisian 1*:

    P2:2: @arina 5istem Maklumat 12/

    P0::: Ann 5istem Maklumat 12/

    PE*AJAR 

    Jadual 8 ' Jadual PE*AJAR 

    Peng$uraian Ke.ada 0NF

    ,erdasarkan $adual Pela"ar di atas ia masih mengalamianomali kemaskinian &sisipan hapusan D ubahsuai

    disebabkan ke#u"udan kebersandaran transiti%

  • 8/16/2019 DB Normalisasi

    34/39

      *0

    Ra"ah '( di atas menun"ukkan hubungan pela"ar

    =nit,eri"a>ah bersandar transiti% atas kunci primer

    iaitu NoPela"ar

    Mengikut panduan hubungan PELA$AR harus

    dihuraikan bagi menghilangkan kebersandaran

    transiti%

     NoPela"ar Ma"or 

     NamaPel =nit,eri"a>ah

  • 8/16/2019 DB Normalisasi

    35/39

      */

    'umpulkan atribut yang bersandar transiti% iaitu

    =nit,eri"a>ah bersama satu salinan penentunya iaituMa"or ke dalam hubungan baru =N!MA$OR danletakkan atribut-atribut yang lain iaitu NoPela"ar

     NamaPel dan Ma"or di dalam satu hubungan lain

    PELA$ARMA$OR ubungan PELA$AR boleh dihuraikan kepada 2hubungan baru iaitu

    =N!MA$OR &Ma"or =nit,eri"a>ah)

    PELA$ARMA$OR &NoPela"ar NamaPel Ma"or) 'edua-dua hubungan berada di dalam *N( kerana

    tidak #u"ud kebersandaran separa dan kebersandarantransiti% atas kunci primer

  • 8/16/2019 DB Normalisasi

    36/39

      *4

    5ebagai rumusan kepada proses penormalan terhadap

    hubungan PEL;RE

  • 8/16/2019 DB Normalisasi

    37/39

      *+

    PEL;RE<

    ;RE<

    '=R5=5

    PELA$AR 

    ;RE<

    '=R5=5

    PELA$ARMA$OR 

    =N!MA$OR 

    NF /NF 0NF

    5ingkirkan

    'ebersandaran penuh

    5ingkirkan

    'ebersandaran transiti% 

    Raja$ / ' Peng$uraian )ubungan PE*+RE e.ada 0NF

  • 8/16/2019 DB Normalisasi

    38/39

      *6

    Penormalan dan

    Reabentu Pangalan ata

    Penormalan merupakan sebahagian daripada prosesrekabentuk sistem pangkalan data

    Melalui proses penghuraian penormalan dapatmenghasilkan hubungan yang berstruktur sempurna

    Rekabentuk pangkalan data dikatakan berada di dalam satu bentuk normal N sekiranya semua skima hubungan yangdikandunginya berada dalam bentuk normal N

    Proses penormalan memberi tumpuan kepada ciri-ciri

    sesuatu entiti dalam model E-R Penormalan menghasilkan entiti atribut atau hubungan

    yang baru

    Oleh sebab itu pemodelan E-R dan penormalan tidak dapatdipisahkan

  • 8/16/2019 DB Normalisasi

    39/39

    !ERMA 'A5