Object-Relational Modeling. What Is a Relational Data Model? Based on the concept of relations (tables of data) Relationships established by matching.

Slides:



Advertisements
Similar presentations
1 Logical Database Design and the Relational Model Modern Database Management.
Advertisements

Monash University Week 7 Data Modelling Relational Database Theory IMS1907 Database Systems.
Systems Development Life Cycle
© 2005 by Prentice Hall 1 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B.
The Database Approach u Emphasizes the integration of data across the organization.
© 2005 by Prentice Hall Chapter 3a Database Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Database Design Conceptual –identify important entities and relationships –determine attribute domains and candidate keys –draw the E-R diagram Logical.
Chapter 4: Logical Database Design and the Relational Model
1 © Prentice Hall, 2002 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B.
Modern Systems Analysis and Design Third Edition
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 3 The Relational Database Model.
© 2007 by Prentice Hall 1 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B.
LOGICAL DATABASE DESIGN
Michael F. Price College of Business Chapter 6: Logical database design and the relational model.
10-1 Chapter 10 Designing Databases Modern Systems Analysis and Design Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
© 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 4: Logical Database Design and the Relational Model Modern Database Management 10.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 9.1.
Chapter 4: Logical Database Design and the Relational Model (Part II)
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management Dave Salisbury ( )
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 2 Slide 1 Chapter 10 Designing Databases.
Concepts and Terminology Introduction to Database.
Chapter 5: Logical Database Design and the Relational Model
CMPE 226 Database Systems September 16 Class Meeting Department of Computer Engineering San Jose State University Fall 2015 Instructor: Ron Mak
Avoiding Database Anomalies
Lecture 12 Designing Databases 12.1 COSC4406: Software Engineering.
Concepts of Relational Databases. Fundamental Concepts Relational data model – A data model representing data in the form of tables Relations – A 2-dimensional.
SALINI SUDESH. Primarily a tool to validate and improve a logical design so that it satisfies certain constraints that avoid unnecessary duplication of.
Chapter 7 1 Database Principles Data Normalization Primarily a tool to validate and improve a logical design so that it satisfies certain constraints that.
10/3/2012ISC329 Isabelle Bichindaritz1 Logical Design.
Copyright 2006 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Third Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
Normalization Well structured relations and anomalies Normalization First normal form (1NF) Functional dependence Partial functional dependency Second.
Chapter 12: Designing Databases
Chapter 5 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred.
Unit 4 Object Relational Modeling. Key Concepts Object-Relational Modeling outcomes and process Relational data model Normalization Anomalies Functional.
Copyright 2006 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Third Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Chapter.
© 2005 by Prentice Hall 1 The Database Development Process Dr. Emad M. Alsukhni The Database Development Process Dr. Emad M. Alsukhni Modern Database Management.
1 © Prentice Hall, 2002 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B.
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 3 The Relational Database Model.
Pree Thiengburanathum, CAMT, Chiang Mai University 1 Database System Logical Database Design and the Relational Model November 1 st, 2009 Software Park,
Logical Database Design and the Relational Model.
1 ER Modeling BUAD/American University Mapping ER modeling to Relationships.
Chapter 10 Designing Databases. Objectives:  Define key database design terms.  Explain the role of database design in the IS development process. 
1 © Prentice Hall, 2002 ITD1312 Database Principles Chapter 4B: Logical Design for Relational Systems -- Transforming ER Diagrams into Relations Modern.
Logical Database Design and the Relational Model.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Normalization Hour1,2 Presented & Modified by Mahmoud Rafeek Alfarra.
6-1 © Prentice Hall, 2007 Topic 6: Object-Relational Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
Chapter 8: Object-Relational Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer.
Copyright © 2016 Pearson Education, Inc. Modern Database Management 12 th Edition Jeff Hoffer, Ramesh Venkataraman, Heikki Topi CHAPTER 3: LOGICAL DATABASE.
© 2007 by Prentice Hall 1 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B.
8-1 © Prentice Hall, 2007 Chapter 8: Object-Relational Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
Chapter 4, Part A: Logical Database Design and the Relational Model
Lecture 4: Logical Database Design and the Relational Model 1.
Logical Design 12/10/2009GAK1. Learning Objectives How to remove features from a local conceptual model that are not compatible with the relational model.
Chapter 4 © 2013 Pearson Education, Inc. Publishing as Prentice Hall Chapter 4: Logical Database Design and the Relational Model Modern Database Management.
Cis339 Modern Systems Analysis and Design Fifth Edition Chapter 10 Designing Databases 10.1.
Logical Design & the Relational Model
Chapter 8: Object-Relational Modeling
Logical Database Design and the Rational Model
Chapter 4 Logical Database Design and the Relational Model
Chapter 4: Logical Database Design and the Relational Model
Chapter 5: Logical Database Design and the Relational Model
Modern Systems Analysis and Design Third Edition
Chapter 9 Designing Databases
Relational Database.
Chapter 5: Logical Database Design and the Relational Model
Chapter 10 Designing Databases
CHAPTER 4: LOGICAL DATABASE DESIGN AND THE RELATIONAL MODEL
Presentation transcript:

Object-Relational Modeling

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.

What Is a Relation? A named, two-dimensional table with the following properties (Not all tables are relations): –Entry at each row and column has a single value. –Entries in columns are from the same set of values (domain range) and correspond to an attribute –Each row is unique (i.e. has a nonempty primary key) and corresponds to a record that contains data values for a class. –Column order does not matter. –Row order does not matter. This is called First Normal Form (1NF)

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

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

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.

The Normal Forms 1 st NF – all relations are in 1NF (basic) 2 nd NF – relations with no partial-key functional dependencies 3 rd NF – relations with no transitive functional dependencies Main goal is to achieve 3NF for all relations.

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

Second Normal Form (2NF) In 1NF and 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

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

Problem: If you had to edit Margaret Simpson’s department or salary, you would have to edit 2 records in this table.

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

Third Normal Form (3NF) In 2NF and 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

Here, (A) Customer_ID  (B) Salesperson, and (B) Salesperson  (C) Region, cause a transitive dependency

Problem: If you had to edit Region for Salesperson Hicks you would have to edit every customer record in table.

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

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

Primary Key in SALES1 table is Customer_ID Foreign Key is Salesperson because it is linked to the SPERSON table by the Primary Key Salesperson

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

The value of Salesperson in each row of table SALES1 is limited to only the current values of Salesperson in the SPERSON table.

Object-Relational Data Model An ORDM is a relational data model with object-oriented extensions  Generalization (& Specialization)  Multivalued attributes (i.e. phone_number)  Aggregation (nested tables and clusters)  Object identifiers (not popularly used)  Pointers (alternative to linking – but requires new syntax for writing queries, not popular)  Behaviors (incorporate methods in a relation)  Richer set of data types (geographic points, documents, large objects)

Translating Conceptual Data Model to Object-Relational Model  Translate classes  Each class becomes an object relation  Identifier of class becomes primary key of object relation  Other attributes become nonprimary attributes of relation  Translate relationships  Represented using a foreign key.  Normalize object relations  Eliminate redundancy (follow 2 nd & 3 rd Normal form)  Merge object relations  Redundant object relations describing the same class must be merged and renormalized

Relational approach, forces atomic attributes Object-relational approach, with multivalued attribute Comparison of techniques for translating multivalued attributes

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

Associative class and M:N relationship Associative Class Many to Many Relationship Uses primary keys of 3 classes (Ternary)

Points for Figure 8.11 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.

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

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

Problems in Merging Object Relations Synonyms –Two or more attributes have different names but same meaning –For example: Employee1(EmpID, name) Employee2(EmpNo, name) Both keys mean the same but are named differently. –The analyst should select one of the two primary key names or use a third name but get agreement from affected departments

Problems in Merging Object Relations Homonyms –A single attribute name has more than one meaning. –For example: Account1(AccountNo, amount) Account2(AccountNo, amount) AccountNo stands for Checking Account No in Account1 and Savings Account No in Account2. –The analyst should select a new attribute name and get agreement from affected departments.

Any Questions?