entity-relationship data model alex ostrovsky. presentation overview ► short historical overview...
Post on 21-Dec-2015
215 Views
Preview:
TRANSCRIPT
Presentation OverviewPresentation Overview
►Short historical overviewShort historical overview►Elements of E-R ModelElements of E-R Model►Basic organization & relationships in E-Basic organization & relationships in E-
R ModelR Model►Design principlesDesign principles
History of E-R ModelHistory of E-R Model
► E-R Model was E-R Model was proposed by Dr. Peter proposed by Dr. Peter Chen (currently Chen (currently professor at Louisiana professor at Louisiana State University)State University)
► Chen’s original paper Chen’s original paper on E-R Model is the on E-R Model is the 3535thth most sited paper most sited paper in computer sciencein computer science
► Chen has written Chen has written papers papers interconnecting E-R interconnecting E-R model and linguisticsmodel and linguistics
IntroductionIntroduction
►Database Structure is often called Database Structure is often called Database SchemaDatabase Schema
►E-R model is graphical in nature, thus E-R model is graphical in nature, thus making it easy to analyze and observe making it easy to analyze and observe relationship between data elementsrelationship between data elements
►Most DBMS are based upon E-R modelMost DBMS are based upon E-R model►E-R model is not a good match for the E-R model is not a good match for the
sophisticated data structures required sophisticated data structures required in today’s DBMSin today’s DBMS
Elements of E-R ModelElements of E-R Model
►Data represented graphically via Data represented graphically via entity-relationship diagram which entity-relationship diagram which contains 3 main element types:contains 3 main element types: Entity setsEntity sets AttributesAttributes RelationshipsRelationships
Entity sets, Attributes, Entity sets, Attributes, RelationshipsRelationships
► Entity setEntity set Is an Is an abstract abstract object, collection of such objects object, collection of such objects
forms an entity set.forms an entity set. Similar notion as in OO designSimilar notion as in OO design
► Attribute:Attribute: Some concrete data (or object type) by which Some concrete data (or object type) by which
entity set is definedentity set is defined
► RelationshipRelationship Specific connection between 2 or more entity Specific connection between 2 or more entity
setssets
E-R DiagramE-R Diagram
►Represents E-R elements by nodes of Represents E-R elements by nodes of specific shape to indicate kindspecific shape to indicate kind Entity sets are represented by rectanglesEntity sets are represented by rectangles Attributes are shown as ovalsAttributes are shown as ovals Relationships correspond to diamondsRelationships correspond to diamonds
►Simple example from the book:Simple example from the book:
Instances of E-R diagramInstances of E-R diagram
►DB described by E-R will contain DB described by E-R will contain specific data (i.e. specific data (i.e. database instancedatabase instance))
►Each entity set will contain a particular Each entity set will contain a particular finite set of entitiesfinite set of entities
►Each entity contains a particular value Each entity contains a particular value for each attributefor each attribute
►E-R data is not stored directly in DBE-R data is not stored directly in DB
E-R RelationshipsE-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 many-one 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 relationshipsMulti-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 ContinuedRelationships Continued►Some data models limit relationships Some data models limit relationships
to be binaryto be binary► It is possible to convert multi-way It is possible to convert multi-way
relationship into a collection of binary relationship into a collection of binary many-one relationshipsmany-one relationships
►Need to introduce a Need to introduce a connectingconnecting entity entity set, which will act as a bridge between set, which will act as a bridge between smaller sets which come from splitting smaller sets which come from splitting a larger multi-way relationship set.a larger multi-way relationship set.
►Connecting entity set might have its Connecting entity set might have its own attributesown attributes
Design PrinciplesDesign Principles► Faithfulness:Faithfulness:
Design has to comply strictly with specificationsDesign has to comply strictly with specifications Logical attributes and relationshipsLogical attributes and relationships
► Avoid redundancyAvoid redundancy► "Everything should be made as simple as "Everything should be made as simple as
possible, but not simpler.” Albert Einsteinpossible, but not simpler.” Albert Einstein► Choose right relationshipsChoose right relationships► Select right elementsSelect right elements
Many choices exist between using attributes and Many choices exist between using attributes and using entity set/relationship combinationsusing entity set/relationship combinations
An attribute is simpler to implement than either An attribute is simpler to implement than either entity set or a relationshipentity set or a relationship
Design Principals Cont.Design Principals Cont.►To replace an entity set by an attribute To replace an entity set by an attribute
or attributes of several entity sets 3 or attributes of several entity sets 3 conditions must be enforced: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
ReferencesReferences
►Dr. Chen’s homepage: Dr. Chen’s homepage: http://bit.csc.lsu.edu/~chen/chen.htmlhttp://bit.csc.lsu.edu/~chen/chen.html
►Database Systems: A First Course, J.D. Database Systems: A First Course, J.D. Ullman & J. WidomUllman & J. Widom
►http://en.wikipedia.org/wiki/Entity-relathttp://en.wikipedia.org/wiki/Entity-relationship_diagramionship_diagram
►http://en.wikipedia.org/wiki/IDEFhttp://en.wikipedia.org/wiki/IDEF►http://http://
en.wikipedia.org/wiki/Entity_relationshien.wikipedia.org/wiki/Entity_relationship_diagramp_diagram
top related