ER Diagram - Department of Computer Science

Entity-Relationship Data
Model
Alex Ostrovsky
Presentation Overview
► Short
historical overview
► Elements of E-R Model
► Basic organization & relationships in E-R
Model
► Design principles
History of E-R Model
► E-R
Model was proposed
by Dr. Peter Chen
(currently professor at
Louisiana State
University)
► Chen’s original paper on
E-R Model is the 35th
most sited paper in
computer science
► Chen has written papers
interconnecting E-R
model and linguistics
Introduction
► Database
Structure is often called Database
Schema
► E-R model is graphical in nature, thus
making it easy to analyze and observe
relationship between data elements
► Most DBMS are based upon E-R model
► E-R model is not a good match for the
sophisticated data structures required in
today’s DBMS
Elements of E-R Model
► Data
represented graphically via entityrelationship diagram which contains 3 main
element types:
 Entity sets
 Attributes
 Relationships
Entity sets, Attributes, Relationships
► Entity
set
 Is an abstract object, collection of such objects forms an
entity set.
 Similar notion as in OO design
► Attribute:
 Some concrete data (or object type) by which entity set
is defined
► Relationship
 Specific connection between 2 or more entity sets
E-R Diagram
► Represents
E-R elements by nodes of
specific shape to indicate kind
 Entity sets are represented by rectangles
 Attributes are shown as ovals
 Relationships correspond to diamonds
► Simple
example from the book:
Simple illustration
Instances of E-R diagram
► DB
described by E-R will contain specific
data (i.e. database instance)
► Each entity set will contain a particular finite
set of entities
► Each
entity contains a particular value for
each attribute
► E-R data is not stored directly in DB
E-R Relationships
► Suppose
R is a relationship connecting entity sets
E and F. Then:
 If each member of E can be connected by R to at
most one member of F, then we say that R is manyone from E to F. Note that in a many-one relationship
from E to F, each entity in F can be connected to many
members of E.
 If R is both many-one from E to F and many-one from F
to E, then we say that R is one-one. In a one-one
relationship an entity of either entity set can be
connected to at most one entity of the other set.
 If R is neither many-one from E to F or from F to E,
then we say R is many-many
Multi-way relationships
►
►
There is a relationship Sequel-of between the entity set
Movies and itself.
To differentiate the two movies in a relationship, one line
is labeled by the role Original and one by the role Sequel,
indicating the original movie and its sequel, respectively.
Relationships Continued
► Some
data models limit relationships to be
binary
► It is possible to convert multi-way
relationship into a collection of binary manyone relationships
► Need to introduce a connecting entity set,
which will act as a bridge between smaller
sets which come from splitting a larger
multi-way relationship set.
► Connecting entity set might have its own
attributes
Design Principles
► Faithfulness:
 Design has to comply strictly with specifications
 Logical attributes and relationships
► Avoid
redundancy
► "Everything should be made as simple as possible,
but not simpler.” Albert Einstein
► Choose right relationships
► Select right elements
 Many choices exist between using attributes and using
entity set/relationship combinations
 An attribute is simpler to implement than either entity
set or a relationship
Design Principals Cont.
► To
replace an entity set by an attribute or
attributes of several entity sets 3 conditions
must be enforced:
 All relationships in which entity set is involved
must have arrows entering it. That is, it must be
the “one” in many-one relationships, or its
generalization for the case of multi-way
relationships.
 The attributes for E must collectively identify an
entity. if there are several attributes, then no
attribute must depend on the other attributes
 No relationship involves E more than once
Thank You.
References
► Dr.
Chen’s homepage:
http://bit.csc.lsu.edu/~chen/chen.html
► Database Systems: A First Course, J.D.
Ullman & J. Widom
► http://en.wikipedia.org/wiki/Entityrelationship_diagram
► http://en.wikipedia.org/wiki/IDEF
► http://en.wikipedia.org/wiki/Entity_relations
hip_diagram