410 likes | 992 Views
Chapter 11. Object-Oriented Databases Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel. In this chapter, you will learn:. What basic concepts govern OO systems What effect OO concepts are likely to have on data modeling and design
E N D
Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel
In this chapter, you will learn: • What basic concepts govern OO systems • What effect OO concepts are likely to have on data modeling and design • How OO features are related to the more traditional relational and E-R models • What the basic features of an OO database management system (OODBMS) are • About the advantages and disadvantages of OODBMSs Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Object Orientation • Object Orientation • Set of design and development principles • Based on autonomous computer structures known as objects • OO Contribution areas • Programming Languages • Graphical User Interfaces • Databases • Design • Operating Systems Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Evolution of OO Concepts • Concepts stem from object-oriented programming languages (OOPLs) • Ada, ALGOL, LISP, SIMULA • OOPLs goals • Easy-to-use development environment • Powerful modeling tools for development • Decrease in development time • Make reusable code • OO Attributes • Data set not passive • Data and procedures bound together • Objects can act on self Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO Concepts: Objects • Abstract representation of a real-world entity • Unique identity • Embedded properties • Ability to interact with other objects and self • OID • Unique to object • Not a primary key • Attributes • Called instance variables • Domain • Object state • Object values at any given time Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO Concepts: Objects (con’t.) • Methods • Code that performs operation on object’s data • Has name and body • Messages • Invokes method • Sent to object • Classes • Collection of similar objects • Shares attributes and structure • Protocol • Represents object’s public aspect Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO Concepts: Objects (con’t.) • Class hierarchy • Code that performs operation on object’s data • Has name and body Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Object Characteristics Figure 11.7 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Class Hierarchy • Superclass • Subclass • Class lattice Figure 11.8 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Inheritance • Ability of object to inherit the data structure and behavior of classes above it • Single inheritance • Class has one immediate superclass Figure 11.9 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Inheritance (con’t.) • Multiple • Class has more than one immediate superclass Figure 11.10 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Method Overriding • Method redefined at subclass level Figure 11.12 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Polymorphism Allows different objects to respond to same message in different ways Figure 11.13 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Abstract Data Types (ADT) • Describes a set of similar objects • Differs from conventional data types • Operations are user-defined • Uses encapsulation • Definitions needed for creation • Name • Data representation • Abstract data type operations and constraints Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Object Classification • Simple • Only single-valued attributes • No attributes refer to other object • Composite • At least one multivalued attribute • No attributes refer to other object • Compound • At least one attribute that references other object • Hybrid • Repeating group of attributes • At least one refers to other object Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Characteristics of OODM • Supports complex objects • Must be extensible • Supports encapsulation • Exhibit inheritance • Supports object identity Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO vs. E-R Model Components Table 11.3 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Shared Representation for all Objects of the Class Person Figure 11.14 Figure 11.15 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Referential Sharing of Objects Figure 11.19 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Class-Subclass Relationship Figure 11.21 Figure 11.20 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Interobject Relationships • Attribute-Class Link • Object’s attribute references another object • Relationship Representation • Related classes enclosed in boxes • Double line on right side indicates mandatory • Connectivity indicated by labeling each box • 1:M • M:N • M:N with an Intersection Class Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
1:1 and 1:M Relationships Figure 11.24 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Employee-Dependent Relationship Figure 11.25 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Representing the M:N Relationship Figure 11.26 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Representing the M:N Relationship with Associated Attributes Figure 11.27 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Representing the M:N Relationship with Intersection Class Figure 11.28 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Object Space Representation Figure 11.29 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Late and Early Binding • Late binding • Data type of attribute not known until runtime • Allows different instances of same class to contain different data types for same attribute • Early binding • Allows database to check data type at compilation or definition time Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OODM vs. E-R Data Models • Object, Entity, and Tuple • OODM object has behavior, inheritance, and encapsulation • OO modeling more natural • Class, Entity Set, and Table • Class allows description of data and behavior • Class allows abstract data types • Encapsulation and Inheritance • Object inherits properties of superclasses • Encapsulation hides data representation and method Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
Object ID Not supported in relational models Relationships OODM Interclass references Class hierarchy inheritance Relational models Value-based approach Access Relational models SQL OODM Navigational Set-oriented access OODM vs. E-R Data Models (con’t.) Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OODBMS • Database management system integrates benefits of typical database systems with OODM characteristics • Handles a mix of data types • Follows OO rules • Follows DBMS rules Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO and Database Design • Provides data identification and the procedures for data manipulation • Data and procedures self-contained entity • Iterative and incremental • DBA does more programming • Lack of standards Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OODBMS Advantages • More semantic information • Support for complex objects • Extensibility of data types • May improve performance with efficient caching • Versioning • Reusability • Inheritance speeds development and application • Potential to integrate DBMSs into single environment Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OODBMS Disadvantages • Strong opposition from the established RDBMSs • Lack of theoretical foundation • Throwback to old pointer systems • Lack of standard ad hoc query language • Lack of business data design and management tools • Steep learning curve • Low market presence • Lack of compatibility between different OODBMSs Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
OO Influences on Relational Model • Extensibility of new user-defined (abstract) data types • Complex objects • Inheritance • Procedure calls (rules or triggers) • System-generated identifiers (OID surrogates) Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel
The Next Generation of DBMS • Object-oriented database systems • Artificial intelligence systems • Expert systems • Distributed database • The Internet Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel