The Entity-Relationship Model Jianlin Feng School of Software SUN YAT-SEN UNIVERSITY courtesy of Joe Hellerstein for some slides.

Slides:



Advertisements
Similar presentations
The Entity-Relationship Model
Advertisements

Conceptual Design using the Entity-Relationship Model
Database Management Systems, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
The Entity-Relationship Model
Database Management Systems, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
1 541: Database Systems S. Muthu Muthukrishnan. 2 Overview of Database Design  Conceptual design: (ER Model is used at this stage.)  What are the entities.
The Entity-Relationship (ER) Model
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
The Entity-Relationship Model
Comp3300/fall021 The Entity-Relationship Model Chapter 2 What are the steps in designing a database ? Why is the ER model used to create an initial design?
The Entity-Relationship Model
Conceptual Design and The Entity-Relationship Model
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
CMPT 354, Simon Fraser University, Fall 2008, Martin Ester 176 Database Systems I The Entity-Relationship Model.
1 The Entity-Relationship Model Chapter 2. 2 Overview of Database Design  Conceptual design: (ER Model is used at this stage.) –What are the entities.
Modeling Your Data Chapter 2. Overview of Database Design Conceptual design: –What are the entities and relationships in the enterprise? – What information.
The Entity-Relationship Model
Conceptual Design Using the Entity-Relationship (ER) Model
The Entity- Relationship Model CS 186 Fall 2002: Lecture 2 R &G - Chapter 2 A relationship, I think, is like a shark, you know? It has to constantly move.
Lecture 2: Entity/Relationship modelling
The Entity-Relationship (ER) Model CS541 Computer Science Department Rutgers University.
1 Data Modeling Yanlei Diao UMass Amherst Feb 1, 2007 Slides Courtesy of R. Ramakrishnan and J. Gehrke.
The Entity- Relationship Model R &G - Chapter 2 A relationship, I think, is like a shark, you know? It has to constantly move forward or it dies. And I.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
ER continued, and ER to Relational Mappings R&G Chapters 2, 3 Lecture 22.
Modeling Your Data Chapter 2. Part II Discussion of the Model: Good Design/ Bad Design?
1 The Entity-Relationship Model Chapter 2. 2 Database Design Process  Requirement collection and analysis  DB requirements and functional requirements.
ISOM MIS710 Module 1a Data and Process Modeling Arijit Sengupta.
The Entity-Relationship Model. 421B: Database Systems - ER Model 2 Overview of Database Design q Conceptual Design -- A first model of the real world.
1 The Entity-Relationship Model Chapter 2. 2 Overview of Database Design  Conceptual design : (ER Model is used at this stage.)  What are the entities.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
Chapter 2.  Conceptual design: (ER Model is used at this stage.) ◦ What are the entities and relationships in the enterprise? ◦ What information about.
CMPT 258 Database Systems The Entity-Relationship Model Part II (Chapter 2)
ICS 321 Spring 2011 High Level Database Models Asst. Prof. Lipyeow Lim Information & Computer Science Department University of Hawaii at Manoa 2/7/20111Lipyeow.
Christoph F. Eick: Designing E/R Diagrams 1 The Entity-Relationship Model Chapter 3+4.
LECTURE 1: Entity Relationship MODEL. Think before doing it! Like most of the software projects, you need to think before you do something. Before developing.
 Entity-relationship models (ERM) Entity-relationship models (ERM)  Simple E-R Diagram Simple E-R Diagram  Weak Entity Weak Entity  Strong Entity.
09/03/2009Lipyeow Lim -- University of Hawaii at Manoa 1 ICS 321 Fall 2009 Introduction to Database Design Asst. Prof. Lipyeow Lim Information & Computer.
Database Management Systems,1 Conceptual Design Using the Entity-Relationship (ER) Model.
1 Conceptual Design using the Entity- Relationship Model.
The Entity-Relationship (ER) Model. Overview of db design Requirement analysis – Data to be stored – Applications to be built – Operations (most frequent)
CSC 411/511: DBMS Design 1 1 Dr. Nan WangCSC411_L2_ER Model 1 The Entity-Relationship Model (Chapter 2)
ER & Relational: Digging Deeper R &G - Chapters 2 & 3.
Modeling Your Data Chapter 2 cs5421. Part II Discussion of the Model: Good Design/ Bad Design? cs5422.
LECTURE 1: Entity Relationship MODEL. Think before doing it! Like most of the software projects, you need to think before you do something. Before developing.
ENTITY- RELATIONSHIP MODELLING 1 All rights reserved by
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
1 Introduction to Data Management Lecture #3 (Conceptual DB Design) Instructor: Chen Li.
Database Management Systems, R. Ramakrishnan and J. Gehrke1 The Entity-Relationship Model Chapter 2.
COP Introduction to Database Structures
The Entity-Relationship Model
MODELS OF DATABASE AND DATABASE DESIGN
The Entity-Relationship Model
The Entity-Relationship Model
Instructor: Elke Rundensteiner
The Entity-Relationship (ER) Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship Model
The Entity-Relationship (ER) Model
Presentation transcript:

The Entity-Relationship Model Jianlin Feng School of Software SUN YAT-SEN UNIVERSITY courtesy of Joe Hellerstein for some slides

The Entity-Relationship Model  Toward a Unified View of Data By Peter Pin-Shan Chen.  In ACM Transaction on Database Systems (TODS), Vol. 1 (1), Also by Peter, a retrospect of ER  Entity-Relationship Modeling: Historical Events, Future Trends, and Lessons Learned

Concept of Entity and Relationship: from the retrospect

Steps in Database Design Requirements Analysis  user needs; what must database do? Conceptual (Database) Design  high level (or semantic) description from users’ daily view.  often done with the ER model Logical (Database) Design  translate ER into DBMS data model (e.g., Relational Model) Schema Refinement  consistency, normalization Physical (Database) Design - indexes, disk layout Security Design - who accesses what, and how

Conceptual Design What are the entities and relationships in the enterprise? What information about these entities and relationships should we store in the database? What are the integrity constraints or business rules that hold? A database `schema’ in the ER Model can be represented pictorially (ER diagrams). Can map an ER diagram into a relational schema.

ER Model Basics Entity:  Real-world object distinguishable from other objects.  An entity is described (in DB) using a set of attributes. Entity Set: A collection of similar entities.  E.g., all employees.  All entities in an entity set have the same attributes.  Each entity set has a key (underlined).  Each attribute has a domain.

Keys A key is a minimal set of attributes whose values uniquely identify an entity in some entity set.  For each entity set, we choose a key. Candidate key  An entity set can have more than one key. Primary key  We designate one of the candidate keys as the primary key.

Representation of an Entity Set Entity set  Represented by a rectangle. Attribute:  Represented by an oval. Key:  Each attribute in the primary key is underlined. Employees ssn name lot

ER Model Basics (Cont.) Relationship: Association among two or more entities.  Represented by a diamond.  relationships can have their own attributes. A relationship must be uniquely identified by the participating entities, without reference to its own attributes. Relationship Set: Collection of similar relationships.  An n-ary relationship set R relates n entity sets E 1... E n ; each relationship in R involves entities e 1  E 1,..., e n  E n

the Works_In Relationship Set lot name Employees ssn Works_In since dname budget did Departments

An Instance of the Works_In Relationship Set

A Ternary Relationship Set: Works_In2

ER Model Basics (Cont.) Same entity set can participate in different relationship sets, or in different “roles” in the same relationship set. subor- dinate super- visor Reports_To since Works_In dname budget did Departments lot name Employees ssn

Key Constraints An employee can work in many departments; a dept can have many employees. 1-to-1 M-to-N since Manages dname budgetdid Departments since Works_In lot name ssn Employees In contrast, each dept has at most one manager, according to the key constraint on Manages. 1-to-N

An Instance of the Manages Relationship Set violates the key constraint on MANAGES: A dept has at most one manager. MANAGES is a kind of WORKS_IN

Participation Constraints The participation of the entity set Departments in the relationship set Manages is said to be total if we assume every department have a manager.  Connect Departments and Manages by a thick line. The participation of the entity set Employees in Manages is partial.

Weak Entities A weak entity can be identified uniquely only by relationship with of another (owner) entity.  Owner entity set and weak entity set must participate in a 1-N relationship set (1 owner, N weak entities).  Weak entity set must have total participation in this identifying relationship set. lot name age pname Dependents Employees ssn Policy cost Weak entities have only a “partial key” (dashed underline)

Class Hierarchies: Organizing Entities into ISA (`is a ’ ) Hierarchies Overlap constraints: Can Joe be an Hourly_Emps as well as a Contract_Emps entity? (Allowed / disallowed) Covering constraints: Does every Employees entity also have to be an Hourly_Emps or a Contract_Emps entity?(Yes / no)

Aggregation As defined so far, a relationship set is an association between entity sets. Aggregation allows us to model a relationship set between entities and relationships.  i.e., treat a relationship set as an entity set for purposes of participation in (other) relationships.

An Example of Aggregation Monitors is a relationship between entity Employees and relationship Sponsors. A project is sponsored by at least 1 department. A department may assign employees to monitor a sponsorship.

Aggregation vs. Ternary Relationship Some attributes are not easily expressed without aggregation, such as “until”. Here, the Monitors relationship is not clearly expressed.

Conceptual Design Using the ER Model ER modeling can get tricky! Design choices:  Entity or attribute?  Entity or relationship?  Relationships: Binary or ternary? Aggregation? ER Model goals and limitations:  Lots of semantics can (and should) be captured.  Some constraints cannot be captured in ER. We’ll refine things in our logical (relational) design

Entity vs. Attribute “Address”:  attribute of Employees?  Entity of its own? It depends! Semantics and usage.  Several addresses per employee? must be an entity atomic attribute types (no set-valued attributes!)  Care about structure? (city, street, etc.) must be an entity! atomic attribute types (no tuple-valued attributes!)

Entity vs. Relationship Separate discretionary budget (dbudget) for each dept. What if manager’s dbudget is a SUM that covers all managed depts  Could repeat value Better design: Associate dbudget with the appointment of the employee as manager of a group of depts. Manages2 name dname budget did Employees Departments ssn lot dbudget since Employees since name dname budget did Departments ssn lot Mgr_Appts is_manager dbudget apptnum managed_by

Summary of the ER Model Entities and Entity Set (boxes) Relationships and Relationship sets (diamonds)  binary  n-ary Key constraints (1-1,1-N, M-N, arrows) Participation constraints (bold for Total) Weak entities - require strong entity for key