Database Systems: Design, Implementation & Management

advertisement

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

Download