Chapter Functional Dependencies and Normalization for Relational Databases.
Database normalization using dependencies graph fotache_m_strimbei_c__ibima2008
-
Upload
marin-fotache -
Category
Data & Analytics
-
view
93 -
download
0
description
Transcript of Database normalization using dependencies graph fotache_m_strimbei_c__ibima2008
Marin Fotache, Catalin StrimbeiIBIMA2008
Back to Simplicity: An Old-Looking New Database Design
Methodology
An “ancient” problemHow to design a database schema for a real-
world application ?Modeling, analysis & design approaches
E/RUnified Process (UML)Agile methodologiesEtc
Normalization
Two methodologies of Normalization
Decomposition (Codd, 1972 & co)Splitting repeatedly the Universal Relation
into relations in order to remove partial and transitive functional dependencies, multivalued and join dependencies
1NF 2NF 3NF BCNF 4NF 5NF...
Synthesis (Bernstein, 1976)
The proposed guide - pillars
Keeping some repeating groups and splitting the others
Functional dependenciesRemoving simmetrical FD’sUsing surrogate keys for:
Identification problemsTransforming MVDs
Inclusion dependencies (IS-A roles)Graphical representation
A FD chart (graph)
A simplified version of the chart
Representing Inclusion Dependencies
Comparison
Surrogation for “fixing” the chart
A “hard surrogation” case
Accepting insular attributes
BCNF transformation
BCNF transformation - example
Trick and surrogates
(Another) Trouble with FDs
A FD/IND based solution
MVD’s – (a R.Fagin’s example)
Emp#
SpouseID
ChildID
Year
SalaryHireDate
EmpDept
PersNameYearOfBirth
Removing MVDs – two solutions