SlideShare a Scribd company logo
1 of 22
Download to read offline
Schema Refinement dan Bentuk Normal
                     8 Desember 2011
Redundancy
 Sumber masalah mengapa perlu Schema Refinement
 Dipecahkan dengan Dekomposisi
    Dekomposisi tidak terbebas dari masalah
    Harus dilakukan dengan hati-hati
 Redundant Storage
    Perulangan penyimpanan informasi
 Update Anomalies
    Jika satu salinan informasi yang berulang di-update,
     muncul inkonsistensi

                Normal Form                                 2
Redundancy
 Insertion Anomalies
    Penambahan informasi baru menimbulkan
     inkonsitensi, kecuali menyertakan informasi lain yang
     tidak berkait
 Deletion Anomalies
    Penghapusan informasi tertentu menimbulkan
     inkonsistensi kecuali informasi lain (yang tidak
     berkaitan) juga dihapus




               Normal Form                                   3
Contoh Kasus
 Nilai Rating 8 berkorespondensi dengan honor per
  jam 10
    Perulangan informasi, redundant storage
 Honor per jam pada baris pertama bisa diupdate tanpa
  mengupdate baris lainnya
    Update anomalies
        Ssn           Name      Lot   Rating hourlySalary hoursWorked
        123-22-3666   Attisho   48    8      10          40
        231-31-5368   Smiley    22    8      10          30
        131-24-3650   Smethurst 35    5      7           30
        434-26-3751   Guldu     35    5      7           32
        612-67-4134 Madayan
                 Normal Form    35    8      10          40      4
Contoh Kasus
 Penyisipan data baru harus mengetahui honor per jam
    Insertion anomalies
    Berapa honor per jam untuk Rating 7?
 Menghapus semua baris dengan rating 5
  menghilangkan informasi honor per jam 7
    Deletion anomalies
        Ssn           Name      Lot   Rating hourlySalary hoursWorked
        123-22-3666   Attisho   48    8      10          40
        231-31-5368   Smiley    22    8      10          30
        131-24-3650   Smethurst 35    5      7           30
        434-26-3751   Guldu     35    5      7           32
        612-67-4134 Madayan
                 Normal Form    35    8      10          40      5
Dekomposisi
Ssn           Name             Lot   Rating   housWorked
123-22-3666   Attishoo         48    8        40
231-31-5368   Smiley           22    8        30
131-24-3650   Smethurst        35    5        30
434-26-3751   Guldu            35    5        32
612-67-4134   Madayan          35    8        40


                                              Rating hourlySalary
                                              8      10
                                              5      7



                       Normal Form                                  6
Dekomposisi
 Seberapa perlu?
 Jika perlu dilakukan, konsekuensi masalah apa yang
  mungkin muncul?
 Normal Form
   Jika schema berada dalam bentuk NF, tidak perlu
    dekomposisi




               Normal Form                             7
Dekomposisi
 Lossless-join
    Merekonstruksi ulang relasi dari hasil dekomposisi
 Dependency-preservation
    Constraint enforcement pada hasil dekomposisi dijamin
     juga berlaku pada relasi awal




               Normal Form                                   8
Kinerja
 Join dua tabel (atau lebih) hasil dekomposisi mungkin
  menurunkan kinerja DBMS
    Jika kueri pada relasi awal sering dilakukan
 Dekomposisi dikorbankan
    Redundancy dan Anomalies
    Application-side checks
 Mungkin meningkatkan kinerja
    Update pada tabel hasil dekomposisi



              Normal Form                                 9
Functional Dependencies
 A good DB Designer and DBA should understand FD
    Masalah apa yang bisa diatasi dengan dekomposisi FD
    Masalah apa yang tidak bisa diatasi
    Potensi masalah dalam melakukan dekomposisi
 Apakah sebuah relasi berada dalam bentuk Normal?
 Apakah sebuah dekomposisi memenuhi sifat
  dependency-preserving?




               Normal Form                                 10
Functional Dependencies
 R sebuah relasi
 X dan Y himpunan non-empty dari atribut-atribut R
 XY
    X functionally determines Y
    X menentukan Y
    Y tergantung kepada X
 Sebuah instance r dari relasi R memenuhi X  Y jika
  memenuhi
    Jika dua baris data (tuple) di X nilainya sama, maka nilai
     di Y harus sama
                Normal Form                                       11
Functional Dependencies
                                         A    B    C     D
 FD AB  C
                                         a1   b1   c1    d1
 AB bukan Key                              a1  b1 c1    d2
    Kenapa?                                a1  b2 c2    d1
 FD adalah bentuk khusus dari              a2  b1 c3    d1
  Integrity Constraint (IC)                 a1  b1 c2    d1

    Instance yang sah (legal instance) harus memenuhi
     semua IC (termasuk juga FD)




               Normal Form                                    12
Functional Dependencies
 Dengan melihat sebuah instance
    Kita bisa menyimpulkan apakah sebuah FD tidak
     terpenuhi
    Kita tidak bisa menyimpulkan apakah sebuah FD
     terpenuhi
 FD dan IC adalah kriteria yang dinyatakan untuk
  semua kemungkinan legal instance dari sebuah
  tabel



              Normal Form                            13
Primary Key dan FD
 PK adalah kasus khusus dari FD
    Atribut-atribut yang menjadi PK adalah X dalam FD
     XY




               Normal Form                               14
Primary Key dan FD
 PK adalah kasus khusus dari FD
    Atribut-atribut yang menjadi PK adalah X dalam FD
     XY
 Definisi FD tidak mengharuskan X sebagai himpunan
  minimal
    X bisa berupa kumpulan satu atau lebih atribut
 Jika FD X  Y berlaku, dengan Y himpunan seluruh
  atribut dan terdapat proper subset V dari X sehingga V
   Y berlaku, maka X disebut sebagai superkey


              Normal Form                              15
Gagasan Tentang FD
 Diberikan himpunan FD dari sebuah tabel R, beberapa
  FD tambahan dapat diturunkan
 Contoh relasi: Workers(ssn, name, lot, did, since)
 FD ssn  did terpenuhi
    Karena ssn adalah primary key
 FD did  lot diberikan
    berdasarkan proses bisnis




               Normal Form                             16
Gagasan Tentang FD
 Pada setiap legal instance Workers
    jika dua tuple memiliki nilai ssn yang sama
     maka kedua tuple pasti memiliki nilai did yang sama
    jika dua tuple memiliki nilai did yang sama
     maka kedua tuple pasti memiliki nilai lot yang sama
 FD ssn  lot diturunkan
 Sebuah FD f diturunkan dari sekumpulan FD F jika
  f terpenuhi pada setiap instance yang memenuhi
  semua dependencies di F


               Normal Form                                 17
Closure dari Himpunan FD
 Closure
    Himpunan semua FD yang diturunkan dari himpunan
     FD F yang diberikan
    Ditulis F+
 Aksioma Armstrong
    aturan-aturan untuk menurunkan F+ dari F
    X, Y, dan Z mewakili himpunan atribut dari sebuah
     tabel R



              Normal Form                                18
Closure dari Himpunan FD
 Aksioma Armstrong
    Reflexivity: Jika X ⊇ Y maka X  Y
        Trivial FD X  Y
        Y hanya terdiri atas atribut-atribut yang juga ada di X
    Augmentation: Jika X  Y maka XZ  YZ untuk
     sembarang Z
    Transitivity: Jika X  Y dan Y  Z maka X  Z
 aturan tambahan
    Union: Jika X  Y dan X  Z maka X  YZ
    Decomposition: Jika X  YZ maka X  Y dan X  Z

                   Normal Form                                     19
Contoh Penerapan Aksioma
Armstrong
 Relasi ABC dengan FD
    AB
    BC
 Aturan Reflexivity
    Semua trivial FD
 Transitivity
    AC
 Augmentation
    AC  BC, AB  AC, AB  CB

             Normal Form         20
Pustaka
 Ramakhrisnan, Raghu & Johannes Gehrke, "Database
  Management Systems", 2nd ed., McGraw-Hill, 2000.
 Elmasri dan Navathe, "Foundation of Database System"
 http://tjerdastangkas.blogspot.com/search/label/ikd312




               Normal Form                                 21
Kamis, 24 November 2011

More Related Content

Viewers also liked

Odyssey Nov 2008
Odyssey Nov 2008Odyssey Nov 2008
Odyssey Nov 2008jhibbs
 
The Ugly Duckling
The Ugly DucklingThe Ugly Duckling
The Ugly DucklingRuthEA
 
Designing the Mobile Experience
Designing the Mobile ExperienceDesigning the Mobile Experience
Designing the Mobile ExperienceKaKi Law
 
Cyberpolitics 2009 W10
Cyberpolitics 2009 W10Cyberpolitics 2009 W10
Cyberpolitics 2009 W10oiwan
 
Microsoft
MicrosoftMicrosoft
MicrosoftVirus91
 
Social Media Uprising (Preview)
Social Media Uprising (Preview)Social Media Uprising (Preview)
Social Media Uprising (Preview)oiwan
 
BONES FESTES
BONES FESTESBONES FESTES
BONES FESTESmariasun
 
O que é o Foto na Parede?
O que é o Foto na Parede?O que é o Foto na Parede?
O que é o Foto na Parede?Foto na Parede
 
Rupert 4.5 UDL and Backwards Design, Jan 2014
Rupert 4.5 UDL and Backwards Design, Jan 2014Rupert 4.5 UDL and Backwards Design, Jan 2014
Rupert 4.5 UDL and Backwards Design, Jan 2014Faye Brownlie
 
Building Distributed Systems in Scala with OpenSplice DDS
Building Distributed Systems in Scala with OpenSplice DDSBuilding Distributed Systems in Scala with OpenSplice DDS
Building Distributed Systems in Scala with OpenSplice DDSAngelo Corsaro
 
CBI Presentation March 2011
CBI Presentation March 2011CBI Presentation March 2011
CBI Presentation March 2011thess1121
 
Haverhill, MA needs a fiber network
Haverhill, MA needs a fiber network Haverhill, MA needs a fiber network
Haverhill, MA needs a fiber network John Michitson
 
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...LINKInnovationStudies
 
Gitified by valentin bora
Gitified by valentin boraGitified by valentin bora
Gitified by valentin boraValentin Bora
 

Viewers also liked (19)

Odyssey Nov 2008
Odyssey Nov 2008Odyssey Nov 2008
Odyssey Nov 2008
 
The Ugly Duckling
The Ugly DucklingThe Ugly Duckling
The Ugly Duckling
 
Designing the Mobile Experience
Designing the Mobile ExperienceDesigning the Mobile Experience
Designing the Mobile Experience
 
Cyberpolitics 2009 W10
Cyberpolitics 2009 W10Cyberpolitics 2009 W10
Cyberpolitics 2009 W10
 
My Portfolio
My PortfolioMy Portfolio
My Portfolio
 
Lxb Attest
Lxb AttestLxb Attest
Lxb Attest
 
Microsoft
MicrosoftMicrosoft
Microsoft
 
Social Media Uprising (Preview)
Social Media Uprising (Preview)Social Media Uprising (Preview)
Social Media Uprising (Preview)
 
BONES FESTES
BONES FESTESBONES FESTES
BONES FESTES
 
Portfolio
PortfolioPortfolio
Portfolio
 
O que é o Foto na Parede?
O que é o Foto na Parede?O que é o Foto na Parede?
O que é o Foto na Parede?
 
Rupert 4.5 UDL and Backwards Design, Jan 2014
Rupert 4.5 UDL and Backwards Design, Jan 2014Rupert 4.5 UDL and Backwards Design, Jan 2014
Rupert 4.5 UDL and Backwards Design, Jan 2014
 
Building Distributed Systems in Scala with OpenSplice DDS
Building Distributed Systems in Scala with OpenSplice DDSBuilding Distributed Systems in Scala with OpenSplice DDS
Building Distributed Systems in Scala with OpenSplice DDS
 
CBI Presentation March 2011
CBI Presentation March 2011CBI Presentation March 2011
CBI Presentation March 2011
 
ikd312-03-design
ikd312-03-designikd312-03-design
ikd312-03-design
 
Haverhill, MA needs a fiber network
Haverhill, MA needs a fiber network Haverhill, MA needs a fiber network
Haverhill, MA needs a fiber network
 
MRLC Feb Reading
MRLC Feb ReadingMRLC Feb Reading
MRLC Feb Reading
 
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...
Innovations in Institutional Arrangements: Towards Enabling Continuous Transi...
 
Gitified by valentin bora
Gitified by valentin boraGitified by valentin bora
Gitified by valentin bora
 

More from Anung Ariwibowo (20)

isd314-06-association-mining
isd314-06-association-miningisd314-06-association-mining
isd314-06-association-mining
 
ikp213-unifikasi
ikp213-unifikasiikp213-unifikasi
ikp213-unifikasi
 
ikp213-06-horn-clause
ikp213-06-horn-clauseikp213-06-horn-clause
ikp213-06-horn-clause
 
ikp213-01-pendahuluan
ikp213-01-pendahuluanikp213-01-pendahuluan
ikp213-01-pendahuluan
 
ikd312-05-sqlite
ikd312-05-sqliteikd312-05-sqlite
ikd312-05-sqlite
 
ikd312-05-kalkulus-relasional
ikd312-05-kalkulus-relasionalikd312-05-kalkulus-relasional
ikd312-05-kalkulus-relasional
 
ikd312-04-aljabar-relasional
ikd312-04-aljabar-relasionalikd312-04-aljabar-relasional
ikd312-04-aljabar-relasional
 
ikd312-02-three-schema
ikd312-02-three-schemaikd312-02-three-schema
ikd312-02-three-schema
 
ikp213-02-pendahuluan
ikp213-02-pendahuluanikp213-02-pendahuluan
ikp213-02-pendahuluan
 
ikh311-08
ikh311-08ikh311-08
ikh311-08
 
ikh311-07
ikh311-07ikh311-07
ikh311-07
 
ikh311-06
ikh311-06ikh311-06
ikh311-06
 
ikh311-05
ikh311-05ikh311-05
ikh311-05
 
ikp321-svn
ikp321-svnikp321-svn
ikp321-svn
 
ikh311-04
ikh311-04ikh311-04
ikh311-04
 
ikp321-05
ikp321-05ikp321-05
ikp321-05
 
imsakiyah-jakarta-1433-09
imsakiyah-jakarta-1433-09imsakiyah-jakarta-1433-09
imsakiyah-jakarta-1433-09
 
ikh311-03
ikh311-03ikh311-03
ikh311-03
 
ikp321-04
ikp321-04ikp321-04
ikp321-04
 
ikp321-03
ikp321-03ikp321-03
ikp321-03
 

Schema Refinement dan Bentuk Normal Form

  • 1. Schema Refinement dan Bentuk Normal 8 Desember 2011
  • 2. Redundancy  Sumber masalah mengapa perlu Schema Refinement  Dipecahkan dengan Dekomposisi  Dekomposisi tidak terbebas dari masalah  Harus dilakukan dengan hati-hati  Redundant Storage  Perulangan penyimpanan informasi  Update Anomalies  Jika satu salinan informasi yang berulang di-update, muncul inkonsistensi Normal Form 2
  • 3. Redundancy  Insertion Anomalies  Penambahan informasi baru menimbulkan inkonsitensi, kecuali menyertakan informasi lain yang tidak berkait  Deletion Anomalies  Penghapusan informasi tertentu menimbulkan inkonsistensi kecuali informasi lain (yang tidak berkaitan) juga dihapus Normal Form 3
  • 4. Contoh Kasus  Nilai Rating 8 berkorespondensi dengan honor per jam 10  Perulangan informasi, redundant storage  Honor per jam pada baris pertama bisa diupdate tanpa mengupdate baris lainnya  Update anomalies Ssn Name Lot Rating hourlySalary hoursWorked 123-22-3666 Attisho 48 8 10 40 231-31-5368 Smiley 22 8 10 30 131-24-3650 Smethurst 35 5 7 30 434-26-3751 Guldu 35 5 7 32 612-67-4134 Madayan Normal Form 35 8 10 40 4
  • 5. Contoh Kasus  Penyisipan data baru harus mengetahui honor per jam  Insertion anomalies  Berapa honor per jam untuk Rating 7?  Menghapus semua baris dengan rating 5 menghilangkan informasi honor per jam 7  Deletion anomalies Ssn Name Lot Rating hourlySalary hoursWorked 123-22-3666 Attisho 48 8 10 40 231-31-5368 Smiley 22 8 10 30 131-24-3650 Smethurst 35 5 7 30 434-26-3751 Guldu 35 5 7 32 612-67-4134 Madayan Normal Form 35 8 10 40 5
  • 6. Dekomposisi Ssn Name Lot Rating housWorked 123-22-3666 Attishoo 48 8 40 231-31-5368 Smiley 22 8 30 131-24-3650 Smethurst 35 5 30 434-26-3751 Guldu 35 5 32 612-67-4134 Madayan 35 8 40 Rating hourlySalary 8 10 5 7 Normal Form 6
  • 7. Dekomposisi  Seberapa perlu?  Jika perlu dilakukan, konsekuensi masalah apa yang mungkin muncul?  Normal Form  Jika schema berada dalam bentuk NF, tidak perlu dekomposisi Normal Form 7
  • 8. Dekomposisi  Lossless-join  Merekonstruksi ulang relasi dari hasil dekomposisi  Dependency-preservation  Constraint enforcement pada hasil dekomposisi dijamin juga berlaku pada relasi awal Normal Form 8
  • 9. Kinerja  Join dua tabel (atau lebih) hasil dekomposisi mungkin menurunkan kinerja DBMS  Jika kueri pada relasi awal sering dilakukan  Dekomposisi dikorbankan  Redundancy dan Anomalies  Application-side checks  Mungkin meningkatkan kinerja  Update pada tabel hasil dekomposisi Normal Form 9
  • 10. Functional Dependencies  A good DB Designer and DBA should understand FD  Masalah apa yang bisa diatasi dengan dekomposisi FD  Masalah apa yang tidak bisa diatasi  Potensi masalah dalam melakukan dekomposisi  Apakah sebuah relasi berada dalam bentuk Normal?  Apakah sebuah dekomposisi memenuhi sifat dependency-preserving? Normal Form 10
  • 11. Functional Dependencies  R sebuah relasi  X dan Y himpunan non-empty dari atribut-atribut R  XY  X functionally determines Y  X menentukan Y  Y tergantung kepada X  Sebuah instance r dari relasi R memenuhi X  Y jika memenuhi  Jika dua baris data (tuple) di X nilainya sama, maka nilai di Y harus sama Normal Form 11
  • 12. Functional Dependencies A B C D  FD AB  C a1 b1 c1 d1  AB bukan Key a1 b1 c1 d2  Kenapa? a1 b2 c2 d1  FD adalah bentuk khusus dari a2 b1 c3 d1 Integrity Constraint (IC) a1 b1 c2 d1  Instance yang sah (legal instance) harus memenuhi semua IC (termasuk juga FD) Normal Form 12
  • 13. Functional Dependencies  Dengan melihat sebuah instance  Kita bisa menyimpulkan apakah sebuah FD tidak terpenuhi  Kita tidak bisa menyimpulkan apakah sebuah FD terpenuhi  FD dan IC adalah kriteria yang dinyatakan untuk semua kemungkinan legal instance dari sebuah tabel Normal Form 13
  • 14. Primary Key dan FD  PK adalah kasus khusus dari FD  Atribut-atribut yang menjadi PK adalah X dalam FD XY Normal Form 14
  • 15. Primary Key dan FD  PK adalah kasus khusus dari FD  Atribut-atribut yang menjadi PK adalah X dalam FD XY  Definisi FD tidak mengharuskan X sebagai himpunan minimal  X bisa berupa kumpulan satu atau lebih atribut  Jika FD X  Y berlaku, dengan Y himpunan seluruh atribut dan terdapat proper subset V dari X sehingga V  Y berlaku, maka X disebut sebagai superkey Normal Form 15
  • 16. Gagasan Tentang FD  Diberikan himpunan FD dari sebuah tabel R, beberapa FD tambahan dapat diturunkan  Contoh relasi: Workers(ssn, name, lot, did, since)  FD ssn  did terpenuhi  Karena ssn adalah primary key  FD did  lot diberikan  berdasarkan proses bisnis Normal Form 16
  • 17. Gagasan Tentang FD  Pada setiap legal instance Workers  jika dua tuple memiliki nilai ssn yang sama maka kedua tuple pasti memiliki nilai did yang sama  jika dua tuple memiliki nilai did yang sama maka kedua tuple pasti memiliki nilai lot yang sama  FD ssn  lot diturunkan  Sebuah FD f diturunkan dari sekumpulan FD F jika f terpenuhi pada setiap instance yang memenuhi semua dependencies di F Normal Form 17
  • 18. Closure dari Himpunan FD  Closure  Himpunan semua FD yang diturunkan dari himpunan FD F yang diberikan  Ditulis F+  Aksioma Armstrong  aturan-aturan untuk menurunkan F+ dari F  X, Y, dan Z mewakili himpunan atribut dari sebuah tabel R Normal Form 18
  • 19. Closure dari Himpunan FD  Aksioma Armstrong  Reflexivity: Jika X ⊇ Y maka X  Y  Trivial FD X  Y  Y hanya terdiri atas atribut-atribut yang juga ada di X  Augmentation: Jika X  Y maka XZ  YZ untuk sembarang Z  Transitivity: Jika X  Y dan Y  Z maka X  Z  aturan tambahan  Union: Jika X  Y dan X  Z maka X  YZ  Decomposition: Jika X  YZ maka X  Y dan X  Z Normal Form 19
  • 20. Contoh Penerapan Aksioma Armstrong  Relasi ABC dengan FD  AB  BC  Aturan Reflexivity  Semua trivial FD  Transitivity  AC  Augmentation  AC  BC, AB  AC, AB  CB Normal Form 20
  • 21. Pustaka  Ramakhrisnan, Raghu & Johannes Gehrke, "Database Management Systems", 2nd ed., McGraw-Hill, 2000.  Elmasri dan Navathe, "Foundation of Database System"  http://tjerdastangkas.blogspot.com/search/label/ikd312 Normal Form 21