Transcript Lecture 5
IST 318
Database Administration
Lecture 4
Data Modeling
Topics
Entities
Relationship
Attributes and keys
Normalization
Data Modeling
Data modeling is trying to answer the WHAT
questions
What data items are needed?
What are the relationships between these items?
Data modeling is critical in database design
Starting from collecting data requirements
Providing a conceptual model of entities & relationships
essential for communication and understanding
A blueprint to build the physical database
Benefits of a Sound Data Model
Benefits
Minimum data redundancy
Maximum data integrity
Better data sharing
Increased consistency
More timely access to data: performance
Better data usability: overall
Additional benefits
New usages
Data mining find out patterns hidden in normal data
Three Rules to Follow
Don’t think physical; think conceptual
Focus on requirement from business perspective
Avoid getting down to details such as storage issues
and DBMS constraints
Don’t think process; think structure
The main point is to answer what need to be stored and
what is the right way to represent the interrelationships
Not when and how they are used
Don’t think navigation; think relationship
Focus on compiling the dictionary, don’t worry about in
how many different ways it can be used
Entities and Entity Occurrences
Entity (also known as entity set)
Similar to the concept of class
Real-world or conceptual concepts that can be
described via a number of attributes
A template of entities of the same kind
Examples: employee, department, location
Entity occurrences (a simple entities)
Similar to the concept of object
Instances of certain types (or entity sets)
Examples: Craig Mullin, Administrative, location #1
Attributes
An attribute is a characteristic of an entity
An attribute does one of the three things
Identifies: uniquely identify a record
Candidate key
Becomes primary key when chosen
Should be immutable
Relates: link to an occurrence in another entity
Foreign key
Describes: depicts or express a characteristic of an
entity occurrence
The salary attribute of the employee entity
Keys
Candidate keys
Sometimes it’s possible that more than sets of
attributes can uniquely identify an occurrence of
an entity
Example:
Both SSN and StudentId in the entity STUDENT
(StudentId,LastName,FirstName,SSN,
...)
Primary keys
The one chosen from a set of candidate keys
Foreign keys
Identify a relationship between entity occurrences in
two entities
Relationships
Defines how different entities relate to each other
The keys define a relationship: PK-FK
Naming Relationships
Example: between COURSE and INSTRUCTOR
COURSE
is-taught-by
INSTRUCTOR
Entities are nouns/noun phrases
Relationships are verbs/verb phrases
Cardinality and Optionality
Cardinality
The number of occurrences that can exist between a pair
of entities
Each end of a relationship has a cardinality
Also known as degree
Typical cardinality terms: one, many
Optionality
Whether relationships are mandatory or optional
Each end of a relationship has a optionality characteristic
An Example
In the employed-by relationship
The STORE can have 0, 1, or many EMPLOYEEs
If an EXPLOYEE exists, a relationship to a STORE is
mandatory
EMPLOYEE
Employed by
STORE
Three Levels
Conceptual data model
Depict a high-level, business-oriented view of
information
Logical data model
Offers a comprehensive formal structure that serves as
a blueprint for business data
Physical data model
Transfers the logical data model into a physical
implementation using a specific DBMS
Normalization
Normalization – first normal form
First normal
form eliminates
repeating
groups and
nonatomic data
from an entity
Normalization – second normal form
Second normal form ensures that all the attributes of each
entity are dependent
Normalization – third normal form
Third normal
form ensures
that no
relationships
between
attributes
exist within
an entity