SlideShare a Scribd company logo
1 of 15
Relational Database Management Systems
Objectives


               • In this session, you will learn to:
                      Describe data redundancy
                      Describe the first, second, and third normal forms
                      Describe the Boyce-Codd Normal Form
                      Appreciate the need for denormalization




    Ver. 1.0                            Session 3                          Slide 1 of 15
Relational Database Management Systems
Understanding Data Redundancy


               Redundancy means repetition of data.
               Redundancy increases the time involved in updating,
               adding, and deleting data.
               It also increases the utilization of disk space and hence,
               disk I/O increases.
               Redundancy can lead to the following problems:
                  Inserting, modifying, and deleting data may cause
                  inconsistencies
                  Errors are more likely to occur when facts are repeated
                  Unnecessary utilization of extra disk space




    Ver. 1.0                       Session 3                                Slide 2 of 15
Relational Database Management Systems
Definition of Normalization


               Normalization is a scientific method of breaking down
               complex table structures into simple table structures by
               using certain rules.
               It allows you to reduce redundancy in a table and eliminate
               the problems of inconsistency and disk space usage.
               Normalization results in the formation of tables that satisfy
               certain specified rules and represent certain normal forms.
               The most important and widely used normal forms are:
                  First Normal Form (1NF)
                  Second Normal Form (2NF)
                  Third Normal Form (3NF)
                  Boyce-Codd Normal Form (BCNF)




    Ver. 1.0                       Session 3                          Slide 3 of 15
Relational Database Management Systems
First Normal Form (1 NF)


               A table is said to be in the 1NF when each cell of the table
               contains precisely one value.
               Functional Dependency:
                  The normalization theory is based on the fundamental notion of
                  functional dependency.
                  Given a relation R, attribute A is functionally dependent on
                  attribute B if each value of A in R is associated with precisely
                  one value of B.




    Ver. 1.0                        Session 3                            Slide 4 of 15
Relational Database Management Systems
Second Normal Form (2 NF)


               A table is said to be in 2NF when it is in 1NF and every
               attribute in the row is functionally dependent upon the whole
               key, and not just part of the key.
               To ensure that a table is in 2NF, you should:
                  Find and remove attributes that are functionally dependent on
                  only a part of the key and not on the whole key and place them
                  in a different table.
                  Group the remaining attributes.




    Ver. 1.0                       Session 3                            Slide 5 of 15
Relational Database Management Systems
Third Normal Form (3 NF)


               A relation is said to be in 3NF when it is in 2NF and every
               non-key attribute is functionally dependent only on the
               primary key.
               To ensure that a table is in 3NF, you should:
                  Find and remove non-key attributes that are functionally
                  dependent on attributes that are not the primary key and place
                  them in a different table.
                  Group the remaining attributes.




    Ver. 1.0                       Session 3                            Slide 6 of 15
Relational Database Management Systems
Boyce-Codd Normal Form (BCNF)


               The original definition of 3NF was inadequate in some
               situations.
               It was not satisfactory for the tables:
                  that had multiple candidate keys
                  where the multiple candidate keys were composite
                  where the multiple candidate keys overlapped
               Therefore, a new normal form-the BCNF was introduced:
                  A relation is in the BCNF if and only if every determinant is a
                  candidate key.




    Ver. 1.0                        Session 3                              Slide 7 of 15
Relational Database Management Systems
Boyce-Codd Normal Form (BCNF) (Contd.)


               In order to ensure that a table is in BCNF, you should:
                  Find and remove the overlapping candidate keys.
                  Place the part of the candidate key and the attribute it is
                  functionally dependent on, in a different table.
                  Group the remaining items into a table.




    Ver. 1.0                         Session 3                              Slide 8 of 15
Relational Database Management Systems
Just a minute


               Which of the following help in achieving a good database
               design?
                1. A table should store data for all the related entities together.
                2. Each table should have an identifier.
                3. Columns that contain NULL values should be created.




               Answer:
                2. Each table should have an identifier.




    Ver. 1.0                          Session 3                              Slide 9 of 15
Relational Database Management Systems
Just a minute


               For which normal form you need to remove non-key
               attributes that are functionally dependent on attributes that
               are not primary key?




               Solution:
                   Third normal form




    Ver. 1.0                       Session 3                          Slide 10 of 15
Relational Database Management Systems
Understanding Denormalization


               The end product of normalization is a set of related tables
               that comprise the database.
               However, in the interests of speed of response to critical
               queries, which demand information from more than one
               table, it is sometimes wiser to introduce a degree of
               redundancy in tables.
               The intentional introduction of redundancy in a table to
               improve performance is called denormalization.




    Ver. 1.0                       Session 3                         Slide 11 of 15
Relational Database Management Systems
Just a minute


               In the reporting system, the total amount paid to a
               contract recruiter is often required. The required result
               can be calculated using the two tables,
               ContractRecruiter and Payment.

                       ContractRecruiter                        Payment
                     cContractRecruiterCode           cSourceCode
                     cName                            mAmount
                     vAddress                         cChequeNo
                     cCity                            dDate
                     siPercentageCharge

               Since the size of the Payment table is large, the join
               between the two tables takes time to generate the
               required output. It is, therefore, necessary to improve
               the performance of this query.


    Ver. 1.0                              Session 3                       Slide 12 of 15
Relational Database Management Systems
Just a minute


                Answer:
                  Denormalize the tables. Add a column called mTotalPaid to
                  the ContractRecruiter table.

                                    ContractRecruiter
                            cContractRecruiterCode
                            cName
                            vAddress
                            cCity
                            siPercentageCharge
                            mTotalPaid




    Ver. 1.0                           Session 3                     Slide 13 of 15
Relational Database Management Systems
Summary


              In this session, you learned that:
                 Normalization is used to simplify table structures.
                 Normalization results in the formation of tables that satisfy
                 certain specified constraints, and represent certain normal
                 forms. The normal forms are used to ensure that various types
                 of anomalies and inconsistencies are not introduced in the
                 database. A table structure is always in a certain normal form.
                 Several normal forms have been identified.
                 The most important and widely used of these are:
                     First Normal Form (1NF)
                     Second Normal Form (2NF)
                     Third Normal Form (3NF)
                     Boyce Codd Normal Form (BCNF)




   Ver. 1.0                        Session 3                            Slide 14 of 15
Relational Database Management Systems
Summary (Contd.)


               The intentional introduction of redundancy in a table in order to
               improve performance is called denormalization.
               The decision to denormalize results in a trade-off between
               performance and data integrity.
               Denormalization increases disk space utilization.




    Ver. 1.0                     Session 3                             Slide 15 of 15

More Related Content

What's hot

Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...IDES Editor
 
Decision support n system management
Decision support n system managementDecision support n system management
Decision support n system managementkrishna_v111
 
Aps11 design interface
Aps11 design interfaceAps11 design interface
Aps11 design interfaceArif Rahman
 
Dbms interview questions s.pdf
Dbms interview questions s.pdfDbms interview questions s.pdf
Dbms interview questions s.pdfShivani139202
 
An agent based approach for building complex software systems
An agent based approach for building complex software systemsAn agent based approach for building complex software systems
An agent based approach for building complex software systemsIcaro Santos
 
information system lecture notes
information system lecture notesinformation system lecture notes
information system lecture notesnaeem_mnm
 
database chap 1 and 2.pptx
database chap 1 and 2.pptxdatabase chap 1 and 2.pptx
database chap 1 and 2.pptxEliasasefa
 
Implementation issues software engineering
Implementation issues software engineeringImplementation issues software engineering
Implementation issues software engineeringrishi ram khanal
 

What's hot (14)

Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...Data oriented and Process oriented Strategies for Legacy Information Systems ...
Data oriented and Process oriented Strategies for Legacy Information Systems ...
 
advanced querying
advanced queryingadvanced querying
advanced querying
 
Decision support n system management
Decision support n system managementDecision support n system management
Decision support n system management
 
Aps11 design interface
Aps11 design interfaceAps11 design interface
Aps11 design interface
 
Dbms interview questions s.pdf
Dbms interview questions s.pdfDbms interview questions s.pdf
Dbms interview questions s.pdf
 
ans3ed-oddonly.pdf
ans3ed-oddonly.pdfans3ed-oddonly.pdf
ans3ed-oddonly.pdf
 
An agent based approach for building complex software systems
An agent based approach for building complex software systemsAn agent based approach for building complex software systems
An agent based approach for building complex software systems
 
IT class IV - ICAB PS-KL
IT class IV - ICAB PS-KLIT class IV - ICAB PS-KL
IT class IV - ICAB PS-KL
 
information system lecture notes
information system lecture notesinformation system lecture notes
information system lecture notes
 
database chap 1 and 2.pptx
database chap 1 and 2.pptxdatabase chap 1 and 2.pptx
database chap 1 and 2.pptx
 
SA Chapter 10
SA Chapter 10SA Chapter 10
SA Chapter 10
 
Implementation issues software engineering
Implementation issues software engineeringImplementation issues software engineering
Implementation issues software engineering
 
Seminar on dss
Seminar on dssSeminar on dss
Seminar on dss
 
6. dss
6. dss6. dss
6. dss
 

Viewers also liked

Atividade 3.4 maria josé
Atividade 3.4 maria joséAtividade 3.4 maria josé
Atividade 3.4 maria joséMARIAZEZINHA
 
iDoctorPad e smartClinica - smart apps for clinical workflow
iDoctorPad e smartClinica - smart apps for clinical workflowiDoctorPad e smartClinica - smart apps for clinical workflow
iDoctorPad e smartClinica - smart apps for clinical workflowDavide Gazzotti
 
El universo tiende-al-desorden
El universo tiende-al-desordenEl universo tiende-al-desorden
El universo tiende-al-desordenmarjorie tipan
 
2.1.2 struktur kurikulum TKJ revisi 2016
2.1.2 struktur kurikulum TKJ revisi  20162.1.2 struktur kurikulum TKJ revisi  2016
2.1.2 struktur kurikulum TKJ revisi 2016La Gani
 
03 penyusunan program semester
03 penyusunan program semester03 penyusunan program semester
03 penyusunan program semesterheri baskoro
 
Deawsj 7 ppt-2_c
Deawsj 7 ppt-2_cDeawsj 7 ppt-2_c
Deawsj 7 ppt-2_cNiit Care
 
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)Katz Ueno
 
撮影の基本
撮影の基本撮影の基本
撮影の基本cwtfabrics
 
Struktur kurikulum-tkj
Struktur kurikulum-tkjStruktur kurikulum-tkj
Struktur kurikulum-tkjheri baskoro
 
Soal try out akuntansi th 2016 paket 2
Soal try out akuntansi th 2016 paket 2Soal try out akuntansi th 2016 paket 2
Soal try out akuntansi th 2016 paket 2heri baskoro
 
Four Bar Mechanism
Four Bar MechanismFour Bar Mechanism
Four Bar MechanismHassan Raza
 
Relato de Viaje en Autocaravana por el Perigord
Relato de Viaje en Autocaravana por el PerigordRelato de Viaje en Autocaravana por el Perigord
Relato de Viaje en Autocaravana por el PerigordCon Mi Autocaravana
 
Tarea 2. Competencias Informacionales
Tarea 2. Competencias InformacionalesTarea 2. Competencias Informacionales
Tarea 2. Competencias InformacionalesAmanda Páez Tudela
 

Viewers also liked (19)

Atividade 3.4 maria josé
Atividade 3.4 maria joséAtividade 3.4 maria josé
Atividade 3.4 maria josé
 
Simple Present
Simple PresentSimple Present
Simple Present
 
Idocaedro aplicacion
Idocaedro aplicacionIdocaedro aplicacion
Idocaedro aplicacion
 
Simple Present
Simple PresentSimple Present
Simple Present
 
Cancha
CanchaCancha
Cancha
 
iDoctorPad e smartClinica - smart apps for clinical workflow
iDoctorPad e smartClinica - smart apps for clinical workflowiDoctorPad e smartClinica - smart apps for clinical workflow
iDoctorPad e smartClinica - smart apps for clinical workflow
 
El universo tiende-al-desorden
El universo tiende-al-desordenEl universo tiende-al-desorden
El universo tiende-al-desorden
 
2.1.2 struktur kurikulum TKJ revisi 2016
2.1.2 struktur kurikulum TKJ revisi  20162.1.2 struktur kurikulum TKJ revisi  2016
2.1.2 struktur kurikulum TKJ revisi 2016
 
03 penyusunan program semester
03 penyusunan program semester03 penyusunan program semester
03 penyusunan program semester
 
Deawsj 7 ppt-2_c
Deawsj 7 ppt-2_cDeawsj 7 ppt-2_c
Deawsj 7 ppt-2_c
 
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)
第3回 Web 動画 編集講座 〜 Webサイトに動画を掲載してみよう - NAMO (NAgoya Movie Obenkyokai)
 
撮影の基本
撮影の基本撮影の基本
撮影の基本
 
50 pertanyaan
50 pertanyaan50 pertanyaan
50 pertanyaan
 
Struktur kurikulum-tkj
Struktur kurikulum-tkjStruktur kurikulum-tkj
Struktur kurikulum-tkj
 
Soal try out akuntansi th 2016 paket 2
Soal try out akuntansi th 2016 paket 2Soal try out akuntansi th 2016 paket 2
Soal try out akuntansi th 2016 paket 2
 
Four Bar Mechanism
Four Bar MechanismFour Bar Mechanism
Four Bar Mechanism
 
Biology
BiologyBiology
Biology
 
Relato de Viaje en Autocaravana por el Perigord
Relato de Viaje en Autocaravana por el PerigordRelato de Viaje en Autocaravana por el Perigord
Relato de Viaje en Autocaravana por el Perigord
 
Tarea 2. Competencias Informacionales
Tarea 2. Competencias InformacionalesTarea 2. Competencias Informacionales
Tarea 2. Competencias Informacionales
 

Similar to 03 rdbms session03

CIS 515 discussion post responses.There are two discussions he.docx
CIS 515 discussion post responses.There are two discussions he.docxCIS 515 discussion post responses.There are two discussions he.docx
CIS 515 discussion post responses.There are two discussions he.docxsleeperharwell
 
Dbms interview questions
Dbms interview questionsDbms interview questions
Dbms interview questionsSoba Arjun
 
Dbms interview ques
Dbms interview quesDbms interview ques
Dbms interview quesSwatiJain303
 
Advanced Database Systems CS352Unit 4 Individual Project.docx
Advanced Database Systems CS352Unit 4 Individual Project.docxAdvanced Database Systems CS352Unit 4 Individual Project.docx
Advanced Database Systems CS352Unit 4 Individual Project.docxnettletondevon
 
Relational Theory for Budding Einsteins -- LonestarPHP 2016
Relational Theory for Budding Einsteins -- LonestarPHP 2016Relational Theory for Budding Einsteins -- LonestarPHP 2016
Relational Theory for Budding Einsteins -- LonestarPHP 2016Dave Stokes
 
Normalisation - 2nd normal form
Normalisation - 2nd normal formNormalisation - 2nd normal form
Normalisation - 2nd normal formcollege
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management SystemHardik Patil
 
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptx
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptxNormalization ppt for RDBMS PPT FOR BCA and for computer science student..pptx
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptxSIR RIP .NET
 
Normalization of database tables
Normalization of database tablesNormalization of database tables
Normalization of database tablesDhani Ahmad
 
Master of Computer Application (MCA) – Semester 4 MC0077
Master of Computer Application (MCA) – Semester 4  MC0077Master of Computer Application (MCA) – Semester 4  MC0077
Master of Computer Application (MCA) – Semester 4 MC0077Aravind NC
 
please answer these true and false questions . note ple.pdf
please answer these true and false questions . note ple.pdfplease answer these true and false questions . note ple.pdf
please answer these true and false questions . note ple.pdfezonesolutions
 
Advance sqlite3
Advance sqlite3Advance sqlite3
Advance sqlite3Raghu nath
 

Similar to 03 rdbms session03 (20)

Rdbms xp 03
Rdbms xp 03Rdbms xp 03
Rdbms xp 03
 
CIS 515 discussion post responses.There are two discussions he.docx
CIS 515 discussion post responses.There are two discussions he.docxCIS 515 discussion post responses.There are two discussions he.docx
CIS 515 discussion post responses.There are two discussions he.docx
 
Dbms interview questions
Dbms interview questionsDbms interview questions
Dbms interview questions
 
Dbms interview ques
Dbms interview quesDbms interview ques
Dbms interview ques
 
Advanced Database Systems CS352Unit 4 Individual Project.docx
Advanced Database Systems CS352Unit 4 Individual Project.docxAdvanced Database Systems CS352Unit 4 Individual Project.docx
Advanced Database Systems CS352Unit 4 Individual Project.docx
 
Ch03
Ch03Ch03
Ch03
 
Normalization,ddl,dml,dcl
Normalization,ddl,dml,dclNormalization,ddl,dml,dcl
Normalization,ddl,dml,dcl
 
Normalization
NormalizationNormalization
Normalization
 
Relational Theory for Budding Einsteins -- LonestarPHP 2016
Relational Theory for Budding Einsteins -- LonestarPHP 2016Relational Theory for Budding Einsteins -- LonestarPHP 2016
Relational Theory for Budding Einsteins -- LonestarPHP 2016
 
Data administration
Data administrationData administration
Data administration
 
James hall ch 9
James hall ch 9James hall ch 9
James hall ch 9
 
Normalisation - 2nd normal form
Normalisation - 2nd normal formNormalisation - 2nd normal form
Normalisation - 2nd normal form
 
Distributed Database Management System
Distributed Database Management SystemDistributed Database Management System
Distributed Database Management System
 
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptx
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptxNormalization ppt for RDBMS PPT FOR BCA and for computer science student..pptx
Normalization ppt for RDBMS PPT FOR BCA and for computer science student..pptx
 
Normalization,ddl,dml,dcl
Normalization,ddl,dml,dclNormalization,ddl,dml,dcl
Normalization,ddl,dml,dcl
 
Normalization of database tables
Normalization of database tablesNormalization of database tables
Normalization of database tables
 
Master of Computer Application (MCA) – Semester 4 MC0077
Master of Computer Application (MCA) – Semester 4  MC0077Master of Computer Application (MCA) – Semester 4  MC0077
Master of Computer Application (MCA) – Semester 4 MC0077
 
please answer these true and false questions . note ple.pdf
please answer these true and false questions . note ple.pdfplease answer these true and false questions . note ple.pdf
please answer these true and false questions . note ple.pdf
 
Advance sqlite3
Advance sqlite3Advance sqlite3
Advance sqlite3
 
T-SQL Overview
T-SQL OverviewT-SQL Overview
T-SQL Overview
 

More from Niit Care (20)

Ajs 1 b
Ajs 1 bAjs 1 b
Ajs 1 b
 
Ajs 4 b
Ajs 4 bAjs 4 b
Ajs 4 b
 
Ajs 4 a
Ajs 4 aAjs 4 a
Ajs 4 a
 
Ajs 4 c
Ajs 4 cAjs 4 c
Ajs 4 c
 
Ajs 3 b
Ajs 3 bAjs 3 b
Ajs 3 b
 
Ajs 3 a
Ajs 3 aAjs 3 a
Ajs 3 a
 
Ajs 3 c
Ajs 3 cAjs 3 c
Ajs 3 c
 
Ajs 2 b
Ajs 2 bAjs 2 b
Ajs 2 b
 
Ajs 2 a
Ajs 2 aAjs 2 a
Ajs 2 a
 
Ajs 2 c
Ajs 2 cAjs 2 c
Ajs 2 c
 
Ajs 1 a
Ajs 1 aAjs 1 a
Ajs 1 a
 
Ajs 1 c
Ajs 1 cAjs 1 c
Ajs 1 c
 
Dacj 4 2-c
Dacj 4 2-cDacj 4 2-c
Dacj 4 2-c
 
Dacj 4 2-b
Dacj 4 2-bDacj 4 2-b
Dacj 4 2-b
 
Dacj 4 2-a
Dacj 4 2-aDacj 4 2-a
Dacj 4 2-a
 
Dacj 4 1-c
Dacj 4 1-cDacj 4 1-c
Dacj 4 1-c
 
Dacj 4 1-b
Dacj 4 1-bDacj 4 1-b
Dacj 4 1-b
 
Dacj 4 1-a
Dacj 4 1-aDacj 4 1-a
Dacj 4 1-a
 
Dacj 1-2 b
Dacj 1-2 bDacj 1-2 b
Dacj 1-2 b
 
Dacj 1-3 c
Dacj 1-3 cDacj 1-3 c
Dacj 1-3 c
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 

03 rdbms session03

  • 1. Relational Database Management Systems Objectives • In this session, you will learn to: Describe data redundancy Describe the first, second, and third normal forms Describe the Boyce-Codd Normal Form Appreciate the need for denormalization Ver. 1.0 Session 3 Slide 1 of 15
  • 2. Relational Database Management Systems Understanding Data Redundancy Redundancy means repetition of data. Redundancy increases the time involved in updating, adding, and deleting data. It also increases the utilization of disk space and hence, disk I/O increases. Redundancy can lead to the following problems: Inserting, modifying, and deleting data may cause inconsistencies Errors are more likely to occur when facts are repeated Unnecessary utilization of extra disk space Ver. 1.0 Session 3 Slide 2 of 15
  • 3. Relational Database Management Systems Definition of Normalization Normalization is a scientific method of breaking down complex table structures into simple table structures by using certain rules. It allows you to reduce redundancy in a table and eliminate the problems of inconsistency and disk space usage. Normalization results in the formation of tables that satisfy certain specified rules and represent certain normal forms. The most important and widely used normal forms are: First Normal Form (1NF) Second Normal Form (2NF) Third Normal Form (3NF) Boyce-Codd Normal Form (BCNF) Ver. 1.0 Session 3 Slide 3 of 15
  • 4. Relational Database Management Systems First Normal Form (1 NF) A table is said to be in the 1NF when each cell of the table contains precisely one value. Functional Dependency: The normalization theory is based on the fundamental notion of functional dependency. Given a relation R, attribute A is functionally dependent on attribute B if each value of A in R is associated with precisely one value of B. Ver. 1.0 Session 3 Slide 4 of 15
  • 5. Relational Database Management Systems Second Normal Form (2 NF) A table is said to be in 2NF when it is in 1NF and every attribute in the row is functionally dependent upon the whole key, and not just part of the key. To ensure that a table is in 2NF, you should: Find and remove attributes that are functionally dependent on only a part of the key and not on the whole key and place them in a different table. Group the remaining attributes. Ver. 1.0 Session 3 Slide 5 of 15
  • 6. Relational Database Management Systems Third Normal Form (3 NF) A relation is said to be in 3NF when it is in 2NF and every non-key attribute is functionally dependent only on the primary key. To ensure that a table is in 3NF, you should: Find and remove non-key attributes that are functionally dependent on attributes that are not the primary key and place them in a different table. Group the remaining attributes. Ver. 1.0 Session 3 Slide 6 of 15
  • 7. Relational Database Management Systems Boyce-Codd Normal Form (BCNF) The original definition of 3NF was inadequate in some situations. It was not satisfactory for the tables: that had multiple candidate keys where the multiple candidate keys were composite where the multiple candidate keys overlapped Therefore, a new normal form-the BCNF was introduced: A relation is in the BCNF if and only if every determinant is a candidate key. Ver. 1.0 Session 3 Slide 7 of 15
  • 8. Relational Database Management Systems Boyce-Codd Normal Form (BCNF) (Contd.) In order to ensure that a table is in BCNF, you should: Find and remove the overlapping candidate keys. Place the part of the candidate key and the attribute it is functionally dependent on, in a different table. Group the remaining items into a table. Ver. 1.0 Session 3 Slide 8 of 15
  • 9. Relational Database Management Systems Just a minute Which of the following help in achieving a good database design? 1. A table should store data for all the related entities together. 2. Each table should have an identifier. 3. Columns that contain NULL values should be created. Answer: 2. Each table should have an identifier. Ver. 1.0 Session 3 Slide 9 of 15
  • 10. Relational Database Management Systems Just a minute For which normal form you need to remove non-key attributes that are functionally dependent on attributes that are not primary key? Solution: Third normal form Ver. 1.0 Session 3 Slide 10 of 15
  • 11. Relational Database Management Systems Understanding Denormalization The end product of normalization is a set of related tables that comprise the database. However, in the interests of speed of response to critical queries, which demand information from more than one table, it is sometimes wiser to introduce a degree of redundancy in tables. The intentional introduction of redundancy in a table to improve performance is called denormalization. Ver. 1.0 Session 3 Slide 11 of 15
  • 12. Relational Database Management Systems Just a minute In the reporting system, the total amount paid to a contract recruiter is often required. The required result can be calculated using the two tables, ContractRecruiter and Payment. ContractRecruiter Payment cContractRecruiterCode cSourceCode cName mAmount vAddress cChequeNo cCity dDate siPercentageCharge Since the size of the Payment table is large, the join between the two tables takes time to generate the required output. It is, therefore, necessary to improve the performance of this query. Ver. 1.0 Session 3 Slide 12 of 15
  • 13. Relational Database Management Systems Just a minute Answer: Denormalize the tables. Add a column called mTotalPaid to the ContractRecruiter table. ContractRecruiter cContractRecruiterCode cName vAddress cCity siPercentageCharge mTotalPaid Ver. 1.0 Session 3 Slide 13 of 15
  • 14. Relational Database Management Systems Summary In this session, you learned that: Normalization is used to simplify table structures. Normalization results in the formation of tables that satisfy certain specified constraints, and represent certain normal forms. The normal forms are used to ensure that various types of anomalies and inconsistencies are not introduced in the database. A table structure is always in a certain normal form. Several normal forms have been identified. The most important and widely used of these are: First Normal Form (1NF) Second Normal Form (2NF) Third Normal Form (3NF) Boyce Codd Normal Form (BCNF) Ver. 1.0 Session 3 Slide 14 of 15
  • 15. Relational Database Management Systems Summary (Contd.) The intentional introduction of redundancy in a table in order to improve performance is called denormalization. The decision to denormalize results in a trade-off between performance and data integrity. Denormalization increases disk space utilization. Ver. 1.0 Session 3 Slide 15 of 15

Editor's Notes

  1. Students have learnt the structure of different types of dimensions and the importance of surrogate keys in Module I. In this session, students will learn to load the data into the dimension tables after the data has been transformed in the transformation phase. In addition, students will also learn to update data into these dimension tables. Students already know about different types of dimension tables. Therefore, you can start the session by recapitulating the concepts. Initiate the class by asking the following questions: 1. What are the different types of dimensions? 2. Define flat dimension. 3. What are conformed dimension? 4. Define large dimension. 5. Define small dimension. 6. What is the importance of surrogate key in a dimension table? Students will learn the loading and update strategies theoretically in this session. The demonstration to load and update the data in the dimension table will be covered in next session.
  2. Students know the importance of surrogate keys. In this session students will learn the strategy to generate the surrogate key. Give an example to explain the strategy to generate the surrogate keys by concatenating the primary key of the source table with the date stamp. For example, data from a Product table has to be loaded into the Product_Dim dimension table on Feb 09, 2006. The product_code is the primary key column in the Product table. To insert the surrogate key values before loading the data into the dimension table, you can combine the primary key value with the date on which the data has to be loaded. In this case the surrogate key value can be product_code+09022006.
  3. Students have learnt the structure of different types of dimensions and the importance of surrogate keys in Module I. In this session, students will learn to load the data into the dimension tables after the data has been transformed in the transformation phase. In addition, students will also learn to update data into these dimension tables. Students already know about different types of dimension tables. Therefore, you can start the session by recapitulating the concepts. Initiate the class by asking the following questions: 1. What are the different types of dimensions? 2. Define flat dimension. 3. What are conformed dimension? 4. Define large dimension. 5. Define small dimension. 6. What is the importance of surrogate key in a dimension table? Students will learn the loading and update strategies theoretically in this session. The demonstration to load and update the data in the dimension table will be covered in next session.
  4. Explain the strategy to load the data into conformed dimension with help of an example to load the data in the date dimension given in SG. Explain the strategy to load the data into the Snowflaked dimension with the help of an example given in SG.
  5. Explain the strategy to load the data into conformed dimension with help of an example to load the data in the date dimension given in SG. Explain the strategy to load the data into the Snowflaked dimension with the help of an example given in SG.
  6. Explain the strategy to load the data into conformed dimension with help of an example to load the data in the date dimension given in SG. Explain the strategy to load the data into the Snowflaked dimension with the help of an example given in SG.
  7. Explain the strategy to load the data into conformed dimension with help of an example to load the data in the date dimension given in SG. Explain the strategy to load the data into the Snowflaked dimension with the help of an example given in SG.
  8. Explain the strategy to load the data into conformed dimension with help of an example to load the data in the date dimension given in SG. Explain the strategy to load the data into the Snowflaked dimension with the help of an example given in SG.
  9. Student already have learnt about SCDs in Module I. Therefore, you can start this topic by asking the following questions to students: What are type 1 SCDs? Given an example to explain type 1 SCDs. This will recapitulate what they have learnt about type 1 SCD in Module 1. Now explain the strategy to load the data into these dimension tables with help of the given diagram. Relate this diagram to the example given in SG.
  10. You can summarize the session by running through the summary given in SG. In addition, you can also ask students summarize what they have learnt in this session.
  11. You can summarize the session by running through the summary given in SG. In addition, you can also ask students summarize what they have learnt in this session.