Chapter 11
Object-Oriented Databases
Database Systems: Design, Implementation, and
Management, Fifth Edition, Rob and Coronel
11
11
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, 5 th Edition, Rob & Coronel
2
11
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, 5 th Edition, Rob & Coronel
3
11
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, 5 th Edition, Rob & Coronel
4
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, 5 th Edition, Rob & Coronel
11
5
11
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, 5 th Edition, Rob & Coronel
6
OO Concepts: Objects (con’t.)
• Class hierarchy
– Code that performs operation on object’s data
– Has name and body
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
7
Object Characteristics
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.7
8
Class Hierarchy
• Superclass
• Subclass
• Class lattice
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.8
9
Inheritance
• Ability of object to inherit the data structure and behavior of classes above it
• Single inheritance
– Class has one immediate superclass
11
Figure 11.9
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
10
Inheritance (con’t.)
• Multiple
– Class has more than one immediate superclass
11
Figure 11.10
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
11
Method Overriding
• Method redefined at subclass level
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.12
12
Polymorphism
Allows different objects to respond to same message in different ways
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.13
13
11
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, 5 th Edition, Rob & Coronel
14
11
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, 5 th Edition, Rob & Coronel
15
11
Characteristics of OODM
• Supports complex objects
• Must be extensible
• Supports encapsulation
• Exhibit inheritance
• Supports object identity
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
16
OO vs. E-R Model Components
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Table 11.3
17
Shared Representation for all Objects of the Class Person
11
Figure 11.14
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.15
18
Referential Sharing of Objects
11
Figure 11.19
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
19
Class-Subclass Relationship
11
Figure 11.20
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.21
20
11
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, 5 th Edition, Rob & Coronel
21
1:1 and 1:M Relationships
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.24
22
Employee-Dependent Relationship
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.25
23
Representing the M:N Relationship
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.26
24
Representing the M:N Relationship with Associated Attributes
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.27
25
Representing the M:N Relationship with Intersection Class
11
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
Figure 11.28
26
Object Space Representation
11
Figure 11.29
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
27
11
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
28
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
11
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, 5 th Edition, Rob & Coronel
29
11
OODM vs. ER Data Models (con’t.)
• 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
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
30
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
11
31
Database Systems: Design, Implementation, & Management, 5 th 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
11
32
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
11
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, 5 th Edition, Rob & Coronel
33
11
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, 5 th Edition, Rob & Coronel
34
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, 5 th Edition, Rob & Coronel
11
35
11
The Next Generation of DBMS
• Object-oriented database systems
• Artificial intelligence systems
• Expert systems
• Distributed database
• The Internet
Database Systems: Design, Implementation, & Management, 5 th Edition, Rob & Coronel
36