Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unit 4 Object Relational Modeling. Key Concepts Object-Relational Modeling outcomes and process Relational data model Normalization Anomalies Functional.

Similar presentations


Presentation on theme: "Unit 4 Object Relational Modeling. Key Concepts Object-Relational Modeling outcomes and process Relational data model Normalization Anomalies Functional."— Presentation transcript:

1 Unit 4 Object Relational Modeling

2 Key Concepts Object-Relational Modeling outcomes and process Relational data model Normalization Anomalies Functional dependency Referential integrity Object-oriented extensions to relational modeling Translating from a CDM to an ORM.

3 Object-relational data modeling converts a conceptual data model to a logical data model based on relational and object-oriented technology.

4 Purposes of Object-Relational Modeling Produce database structures Create entity classes Enhance and finalize the attributes in the data model

5 What Is a Relational Data Model? Based on the concept of relations (tables of data) Relationships established by matching primary and foreign keys Relational DBMSs (RDBMS) are the most commonly used in industry today. Many DBMS vendors have begun adding object-oriented features, creating an object-relational model.

6 What Is a Relation? A named, two-dimensional table with the following properties: All cells contain are atomic (single-value) data. Entries in columns are from the same set of values (domain range). Each row is unique (i.e. has a nonempty primary key). Column order does not matter. Row order does not matter. This is called First Normal Form (1NF)

7 Homework Review Question #2 page 234 Give one example of each of the three normal forms (other than those included in this chapter) Give an example of 1NF now

8 Example relation: note uniqueness of rows guaranteed by Emp_ID. Primary keys are underlined

9 What Is Normalization? The process of converting complex data structures into well- structured relations Well-structured relation Contains a minimum amount of redundancies Allows rows to be inserted, modified, and deleted without introducing errors or inconsistencies

10 Consequences of Relations that Are Not Well Structured Insertion anomaly – adding new rows forces user to create duplicate data Update anomaly – changes in one row force changes in other rows because of duplication Deletion anomaly – deleting rows may cause a loss of data that would be needed for other future rows Data integrity requires well-structured relations.

11 What Is a Functional Dependency? The functional dependency of attribute B on attribute A is represented by an arrow A  B, and implies that every valid value of attribute A uniquely determines the value of attribute B. Determinant – the attribute on the left side of the arrow All primary keys are determinants

12 The Normal Forms 1 st NF All relations are in 1NF Relations do not include multivalued attributes 2 nd NF Relations with no partial-key functional dependencies 3 rd NF Relations with no transitive functional dependencies Higher Normal forms: 4 th, Boyce Codd, 5 th – mainly theoretical, not needed for most OOSAD problems Main goal is to achieve 3NF for all relations.

13 Second Normal Form (2NF) 1NF, plus no partial key functional dependencies If the primary key is a composite key (composed of more than one attribute) it is possible for an attribute to be functionally dependent on only part of the key Avoid partial dependencies for 2NF

14 Homework Review Question #2 page 234 Give one example of each of the three normal forms (other than those included in this chapter) Give an example of 2NF now

15 This table has a composite key (Emp_ID and Course) Functional dependencies: Emp_ID  Name, Dept, Salary Emp_ID, Course  Date_Completed Name, Dept, and Salary all have partial key dependencies, causing duplication of data.

16 Solution: Break the relation into two separate relations. 1:N relationship linked by Emp_ID No partial key dependencies Well structured

17 Third Normal Form (3NF) 2NF, plus no transitive functional dependencies Given three attributes in a relation A, B, C If A  B and B  C, this forms a transitive functional dependency Avoid transitive dependencies for 3NF

18 Here, Customer_ID  Salesperson, and Salesperson  Region, cause a transitive dependency

19 Break the relation into two separate relations. 1:N relationship linked by SalesPerson No transitive dependencies Well structured Solution:

20 Homework Review Question #2 page 234 Give one example of each of the three normal forms (other than those included in this chapter) Give an example of 3NF now

21 Primary and Foreign Keys Primary key – one or more attributes that together form a unique identifier for rows in the relation Foreign key – an attribute that appears as a non-primary key attribute or as part of a primary key in one relation and as a primary key attribute in another relation Relationship – rows in one relation are matched with related rows in another relation through foreign keys

22 Referential Integrity A rule that states that any foreign key value (on the relation of the many side) MUST match a primary key value in the relation of the one side No foreign key can contain a value that is not present in a primary key in the other relation

23 Homework Review Question #4 page 234 If referential integrity is violated, what problems will result?

24 Object-Oriented Extensions to Relational Modeling Generalization Multivalued attributes (OK to violate atomicity requirement of 1NF) Aggregation Object identifiers Pointers Behaviors Richer set of data types Object-relational Data Model

25 Translating Conceptual Data Model to Object-Relational Model Translate classes Translate relationships Normalize object relations Merge object relations

26 Relational approach, forces atomic attributes Object-relational approach, with multivalued attribute Comparison of techniques for translating multivalued attributes STUDENT (StudentID, Name, Address) STUDENT_PHONES(StudentID, PhoneNumber) STUDENT (StudentID, Name, Address, {PhoneNumbers})

27 When constructing 1:N relationships, the foreign key is added as an attribute to the relation on the N side.

28 Associative class and M:N relationship

29 Homework Review Question #8 page 234 How are relationships between classes represented in relational notation? Homework Review Question #9 page 234 How is a foreign key represented in relational notation?

30 Associative Classes Associative class is translated into a relation whose primary key is a composite of the primary keys of the other two classes. M:N relationship between Work and Skill is implemented as an extra relation UseSkills, whose primary key is composed of the primary keys of Work and Skill.

31 Unary 1:N relationship is represented by a foreign key managerID, which matches with the empId primary key of the same relation.

32 Unary M:N relationship is represented by a separate relation Prerequisite, whose primary key is composed of two primary key values from the Course relation.

33 Other Relationships Aggregation and Composition – use same rules that apply to association. Composition is 1:N, aggregation is M:N Generalization – no uniform standard exists. Can make use of stereotypes to annotate generalizations

34 Merging Object Relationships Similar or redundant object relations can be merged into one Example: merge

35 Problems with Merging Synonyms – two relations with different attribute names referring to same meaning Solution – decide on a single standard name Homonyms – two relations with same attribute names referring to different meanings Solution – create new attribute for second meaning Dependencies between non-key attributes after merge Solution – normalize the merged relation

36 PVF WebStore Conceptual Data Model Use Figure 7.31 on page 208 of Object-Oriented Systems Analysis and Design


Download ppt "Unit 4 Object Relational Modeling. Key Concepts Object-Relational Modeling outcomes and process Relational data model Normalization Anomalies Functional."

Similar presentations


Ads by Google