Top Banner
1 Data Modeling 2 Yong Choi School of Business CSUB
37
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: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1

Data Modeling 2

Yong Choi

School of Business

CSUB

Page 2: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Steps for creating an ERD• Identify the entities

– Look for singular nouns (in real world situation, avoid noun w/o attributes)

– Also avoid proper nouns• Identify the attributes

– Look for entity characteristics or properties• Identify the relationships

– Look for verb (between entities)

Page 3: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Entities???

• Made up for the class…….ambiguous…•Using original Chen’s notation

ANG Laboratory has several chemists who work on one or more projects. Chemists also may use certain kinds of equipment on each project. The organization would like to store the chemist’s employee identification number, his/her name, up to three phone numbers, his/her project identification number and the date on which the project started. Every piece of equipment, the chemist uses, has a serial number and a cost.

Page 4: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Entities

Chemist

Project

Equipment

Page 5: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Entities’ Attributes???

ANG Laboratory has several chemists who work on one or more projects. Chemists also may use certain kinds of equipment on each project. The organization would like to store the chemist’s employee identification number, his/her name, up to three phone numbers, his/her project identification number and the date on which the project started. Every piece of equipment, the chemist uses, has a serial number and a cost.

Page 6: 1 Data Modeling 2 Yong Choi School of Business CSUB.

6

entities, attributes and identifiers

Project

Proj#Start-Date

Chemist

Phone#Emp#

EquipmentSerial#

cost

Page 7: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Relationships ???

ANG Laboratory has several chemists who work on one or more projects. Chemists also may use certain kinds of equipment on each project. The organization would like to store the chemist’s employee identification number, his/her name, up to three phone numbers, his/her project identification number and the date on which the project started. Every piece of equipment, the chemist uses, has a serial number and a cost.

Page 8: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Entities/Relationships& their Attributes

Chemist

Phone#

Project

Proj#Start-Date

Equipment

Works-On

Uses

Date-Assigned

Emp#

Serial#

cost

Assign-Date

Page 9: 1 Data Modeling 2 Yong Choi School of Business CSUB.

More about Relationship• Description of each relationship should be bidirectional. • Operate in both directions– Relationship between Student and Curriculum

• A student is enrolled in many curriculums (student to Curr.).

• Each curriculum is being studied by many students (Curr to student).

Page 10: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Degree of Relationship

• Degree of a Relationship describes the number of entity participation – Unary (Recursive) Relationship: One instance

related to another of the same entity type– Binary Relationship: Instances of two different

entities related to each other– Ternary Relationship: Instances of three

different types related to each other

Page 11: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Relationships

• Entities can be associated with one another in relationships.

• Relationship degree defines the number of entity classes participating in the relationship:– Unary relationship.– binary relationship.– ternary relationship.

Page 12: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Degree of Relationship …

Page 13: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Unary (recursive) Relationship• It is possible for an entity to have a relationship to

itself—this is called a recursive relationship.

supervises

Is supervised by

Page 14: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Binary Relationship

Page 15: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Ternary Relationship

Page 16: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Cardinality• One – to – One (1:1)

– Each instance in the relationship will have exactly one related member on the other side

• One – to – Many (1:M)– A instance on one side of the relationship can have many

related members on the other side, but a member on the other side will have a maximum of one related instance

• Many – to – Many (M:N)– Instances on both sides of the relationship can have many

related instances on the other side

Page 17: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Optionality

• The Optionality is a property of an attribute which specify if a value is mandatory or optional. 

• To identify optional relationship, look for auxiliary verb such as can or may

Page 18: 1 Data Modeling 2 Yong Choi School of Business CSUB.

18

CardinalityThe organization would like to store the date the chemist was assigned to the project and the date an equipment item was assigned to a particular chemist working on a particular project. A chemist must be assigned at least to one (or more) project and one (or more) equipment. Projects and equipments must be managed by only one chemist. A given project need not be assigned an equipment.

Page 19: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Complete ER Diagram

Chemist

Phone#

Project

Proj#Start-Date

Equipment

Works-On

Uses

Date-Assigned

N1

N1

Emp#

Serial#

cost

Assign-Date

Page 20: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Steps for developing an ERD 2

• Identify the entities • Identify the attributes • Identify the relationships

– Beginner: look for relationship-type related words and phrases such as zero, none, a, one, several, many…..

– Optional relationship: look for auxiliary verbs such as may, might, can and based upon own judgment..)

• Finalize business rules

Page 21: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Data Model Notation

• 1-to-1 relationship

• 1-to-M relationship

• M-to-N relationship

Page 22: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Data Model Notation

Page 23: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Data Model Notation

• weak entity relationship (see the next slide)

• optional relationship

• recursive relationship

Employee

Page 24: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Weak Entity relationship

• A weak entity is an entity that cannot be uniquely identified and existed by itself alone.

• Thus, a weak entity is an entity that exists only if it is related to a set of uniquely determined entities (owners of the weak entity). – More examples on the textbook

• Each employee might have none or multiple dependents. However, dependents must belong to at least one employee.

EMP DEP

weak entity notation

Page 25: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1:1 relationship

A person must have one and only one DNA pattern and eac pattern must be applied to one and only one person.

Page 26: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1:1 with optional relationship (OR)on one side

A person might not or might be a programmer, but a programmer must be a person.

Page 27: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1:M relationship

Each department hires many employees, and each employee is hired by one department.

EMPLOYEEDEPARTMTHIRES

IS_HIRED_BY

Page 28: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1:M with OR on many side A person might be a member or might not, but could be

found multiple times (if the member entity represents membership in multiple clubs, for instance). A member must have only a single person.

Page 29: 1 Data Modeling 2 Yong Choi School of Business CSUB.

1:M with OR on both side A person might have no phone, one phone or lots of

phones, and that a phone might be un-owned or can only be owned by a person.

Page 30: 1 Data Modeling 2 Yong Choi School of Business CSUB.

M:N relationshipEach student takes many classes, and a class must be taken by many students.

** Many-to-many relationships cannot allowed in the data model because they cannot be represented by the relational model (see the next slide for the reason) **

STUDENTCLASSTAKE

IS_TAKEN_BY

Page 31: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Example M:N Relationship

3 to 330 to 30

300 to 3003000 to 3000

30,000 to 30,000300, 000 to 300, 000

Table to represent Entity

Page 32: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Example of M:N

Many-to-many relationships is a second sign of complex data.

When x relates to many y's and y relates to many x's, it is a many-to-many relationship.

In our example schema, a color swatch can relate to many types of sweaters and a type of sweater can have many color swatches. 

Page 33: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Transformation of M:N1. When transform to relational model, many

redundancies can be generated.– The relational operations become very complex and are likely

to cause system efficiency errors and output errors. – Break the M:N down into 1:N and N:1 relationships using

bridge entity (weak entity).

CLASS STUDENTENROLL

Page 34: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Converting M:N Relationship to Two 1:M Relationships

Bridge Entity

Page 35: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Bridge (Associative - textbook) Entity

• ENROLL entity becomes a weak entity of both STUDENT entity and CLASS entity

• MUST have a composite (unique) identifier STU_NUM (from STUDENT entity) and CLASS_CODE

(from CLASS entity)

• Another MUST know M:N example on the textbook page 63 and 64

Page 36: 1 Data Modeling 2 Yong Choi School of Business CSUB.

M:N with optionality on both side

• A person might or might not work for an employer, but could certainly moonlight for multiple companies. An employer might have no employees, but could have any number of them.

After broken down, optional relationship notation on both side of associative entity

Page 37: 1 Data Modeling 2 Yong Choi School of Business CSUB.

Recursive relationship • Each student is taught by a STA (student teaching

assistant). Each STA can teach several students. • A recursive relationship is an entity is associated with itself.

Student

teaches

is taught by