Top Banner
Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 06/10/22 1
34

Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Jan 20, 2016

Download

Documents

Elizabeth Lyons
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Lecture Nine: Normalization

Introduction to Normalization: redundancy, anormalies?

1st – 3rd Normal Forms

04/21/23 1

Page 2: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Objectives Purpose of normalization. Problems associated with redundant data. Identification of various types of update anomalies such as

insertion, deletion, and modification anomalies. How to recognize appropriateness or quality of the design of

relations. How functional dependencies can be used to group attributes

into relations that are in a known normal form. How to undertake process of normalization. How to identify most commonly used normal forms, namely

1NF, 2NF, and 3NF

04/21/23 2

Page 3: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Normalization Normalization is defined as a technique for producing a set of

well designed relations that measure up to a set of requirements which are outlined in various levels of normalization (or Normal Forms).

Most commonly used normal forms are first (1NF), second (2NF) and third (3NF) normal forms.

Normalization has the underlying aim of minimizing information redundancy, avoiding data inconsistency and preventing Update anomalies (insertion, deletion, and modification anomalies).

04/21/23 3

Page 4: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Data Redundancy Major aim of relational database design is to group attributes

into relations to minimize data redundancy and reduce file storage space required by base relations.

Problems associated with data redundancy are illustrated by comparing the following Staff and Branch relations with the StaffBranch relation.

04/21/23 4

Page 5: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Data Redundancy

04/21/23 5

Page 6: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Update Anomalies Relations that contain redundant information may potentially

suffer from update anomalies.

Types of update anomalies include: Insertion Deletion Modification.

Insertion Anomaly: Occurs when extra data beyond the desired data must be added to the database.

04/21/23 6

Page 7: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Update anomalies: Insertion Anomaly Until the new faculty member, Dr. Newsome, is assigned to

teach at least one course, his details cannot be recorded.

04/21/23 7

Page 8: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Update anomalies: Modification Anomaly

04/21/23 8

Modification Anomaly: Changing the value of one of the columns in a table will mean changing all the values that have to do with that column.

Employee 519 is shown as having different addresses on different records.

Page 9: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Update anomalies: Deletion Anomaly Deletion Anomaly: Occurs whenever deleting a row inadvertently causes other data to be deleted.

All information about Dr. Giddens is lost when he temporarily ceases to be assigned to any courses.

04/21/23 9

Page 10: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Functional Dependency Functional Dependency: Describes relationship between attributes

in a relation. If A and B are attributes of relation R, B is functionally

dependent on A (denoted A B), if each value of A in R is associated with exactly one value of B in R.

Diagrammatic representation:

Main concept associated with normalization.04/21/23 10

Determinant of a functional dependency refers to attribute or group of attributes on left-hand side of the arrow.

Page 11: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Example branchNo bAddress

04/21/23

Functiona

l Dependencie

s

2.11

Page 12: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Example - Functional Dependency

04/21/23 12

Page 13: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Example

04/21/23

Functiona

l Dependencie

s

2.1

3

Page 14: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Example

04/21/23 14

Given TEXT we know the COURSE.TEXT ->COURSE

TEXT maps to a single value of COURSE

Page 15: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

The Process of Normalization Formal technique for analyzing a relation based on its

primary key and functional dependencies between its attributes.

Often executed as a series of steps. Each step corresponds to a specific normal form, which has known properties.

As normalization proceeds, relations become progressively more restricted (stronger) in format and also less vulnerable to update anomalies.

04/21/23 15

Page 16: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Unnormalized Form (UNF) A table that contains one or more repeating groups.

Note: A repeating group is an attribute or group of attributes within a table that occurs with multiple values for a single occurrence of the nominated key attributes for that table. For example a book with multiple authors, etc

To create an unnormalized table: transform data from information source (e.g. form) into

table format with columns and rows.

04/21/23 16

Page 17: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

First normal form (1NF) A table is in First Normal Form (1NF) iff all its attributes are

atomic. A domain is atomic if its elements are considered to be

indivisible units. A relation in which intersection of each row and column contains one and only one value.

Implies that it should have no composite attributes or multi-valued attributes.

In case a table is not in 1NF, we do two things

04/21/23 17

Page 18: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

UNF to 1NF First identify a primary key, then

Either

Place each value of a repeating group on a tuple with duplicate values of the non-repeating data (called “flattening” the table)

Or Make a new table to cater for multi-valued attributes. Place repeating data along with copy of the original key

attribute(s) into a separate relation The new primary key should be a combination of the (multi-

valued) attribute and the primary key of the parent table.

04/21/23 18

Page 19: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

UNF to 1NF

Normalizatio

n

Page 20: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

UNF to 1NF

04/21/23 20

Page 21: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

UNF to 1NF

04/21/23 21

Page 22: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

HEALTH HISTORY REPORT

04/21/23 22

PET ID PET NAME PET TYPE PET AGE OWNER VISIT DATEPROCEDURE

PID PNAME

246 ROVER DOG 12 SAM COOK

JAN 13/2002 01 RABIES VACCINATION

MAR 27/2002 10 EXAMINE and TREAT WOUND

APR 02/2002 05 HEART WORM TEST

298 SPOT DOG 2 TERRY KIM

JAN 21/2002 08 TETANUS VACCINATION

MAR 10/2002 05 HEART WORM TEST

341 MORRIS CAT 4 SAM COOK

JAN 23/2001 01 RABIES VACCINATION

JAN 13/2002 01 RABIES VACCINATION

519 TWEEDY BIRD 2 TERRY KIM

APR 30/2002 20 ANNUAL CHECK UP

APR 30/2002 12 EYE WASH

Page 23: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Second Normal Form (2NF) Based on concept of full functional dependency:

A and B are attributes of a relation, B is fully dependent on A if B is functionally dependent

on A but not on any proper subset of A. 2NF - A relation that is in 1NF and every non-primary-key

attribute is fully functionally dependent on the primary key.

It applies to relations that have composite keys for a primary key.

04/21/23

Normalizatio

n

Page 24: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

1NF to 2NF This involves the removal of partial dependencies

A partial dependency occurs when the primary key is made up of more than one attribute (i.e. it is a composite primary key) and there exists an attribute (which is a non-primary key attribute) that is dependant on only part of the primary key.

These partial dependencies can be removed by removing all of the partially dependent attributes into another relation along with a copy of the determinant attribute (which is part of the primary key in the original relation)

04/21/23

Normalizatio

n

Page 25: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

1NF to 2NF

04/21/23 25

Page 26: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

04/21/23 26

Page 27: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Third Normal Form (3NF) Based on concept of transitive dependency:

A, B and C are attributes of a relation such that if A B and B C,

then C is transitively dependent on A through B. (Provided that A is not functionally dependent on B or C).

3NF - A relation that is in 1NF and 2NF and in which no non-primary-key attribute is transitively dependent on the primary key.

04/21/23

Normalizatio

n

Page 28: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

2NF to 3NF Identify the primary key in the 2NF relation.

Identify functional dependencies in the relation.

If transitive dependencies exist on the primary key remove them by placing them in a new relation along with copy of their determinant.

04/21/23

Normalizatio

n

Page 29: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

``````3ea4EZQq `1 1

04/21/23 29

Page 30: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

04/21/23 30

Page 31: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Exercises: Instructions

The following tables are susceptible to update anomalies. Provide examples of insertion, deletion, and modification anomalies.

Describe and illustrate the process of normalizing the tables to 3NF. State any assumptions you make about the data shown in these tables.

04/21/23 31

Page 32: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Exercise 1

04/21/23 32

Page 33: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Exercise 2

04/21/23 33

Page 34: Lecture Nine: Normalization Introduction to Normalization: redundancy, anormalies? 1 st – 3 rd Normal Forms 12/6/20151.

Exercise 3

04/21/23 34