Download presentation
Presentation is loading. Please wait.
Published byAlan Lester Modified over 9 years ago
1
11 1 Chapter 11 Object Oriented Databases Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel
2
11 2 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel In this chapter, you will learn: What basic concepts govern OO systems How OO features are related to the more traditional relational and ER models What the basic features of an OO database management system (OODBMS) are What effect OO concepts are likely to have on data modeling and design
3
11 3 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel In this chapter, you will learn: ( continued ) About the advantages and disadvantages of OODBMSs How OO concepts have influenced the relational model How Oracle9i implements object extensions
4
11 4 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Orientation and Its Benefits A set of design and development principles based on conceptually autonomous computer structures known as objects Each object represents a real-world entity with the ability to act upon itself and interact with other objects Modularity is therefore almost inevitable
5
11 5 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Orientation Contributions
6
11 6 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel The Evolution of Object Oriented Concepts Object oriented programming –Developed as an alternative to traditional programming methods –Programmer creates or uses objects: Self-contained, reusable modules that contain data as well as the procedures used to operate on such data
7
11 7 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel The Evolution of Object Oriented Concepts ( continued ) Object oriented programming languages were developed to: –Provide an easy-to-use software development environment –Provide a powerful software modeling tool for application development –Decrease development time by reducing the amount of code –Improve programmer productivity by making that code reusable
8
11 8 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel The Evolution of Object Oriented Concepts ( continued ) Object oriented environment has several important attributes: –Data set is no longer passive –Data and procedures are bound together, creating an object –Object has an innate ability to act on itself
9
11 9 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Oriented Concepts Have their roots in programming languages No knowledge of programming is necessary to understand these concepts
10
11 10 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Objects: Components and Characteristics Object: –Abstract representation of a real-world entity –Has: Unique identity Embedded properties Ability to interact with other objects and act upon itself –Defining characteristic is its unique identity
11
11 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Real-World Student Objects
12
11 12 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Identity Unique to that object Assigned by system at moment of object’s creation Cannot be changed under any circumstances Can be deleted only if the object is deleted Can never be reused
13
11 13 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Attributes (Instance Variables) Attributes: –Known as instance variables in OO environment Domain: –Logically groups and describes the set of all possible values that an attribute can have
14
11 14 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Attributes
15
11 15 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object State Set of values that object’s attributes have at a given time Can vary, although its OID remains the same To change the object’s state, change the values of the object’s attributes To change the object’s attribute values, send a message to the object –Message will invoke a method
16
11 16 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Messages and Methods Method: –Code that performs a specific operation on object’s data –Protects data from direct and unauthorized access by other objects –Used to change the object’s attribute values or to return the value of selected object attributes –Represent real-world actions
17
11 17 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Depiction of an Object
18
11 18 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Method Components
19
11 19 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Objects Send Messages to Each Other
20
11 20 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Classes Collection of similar objects with shared structure (attributes) and behavior (methods) Class instance or object instance –Each object in a class
21
11 21 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Class Illustration
22
11 22 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Protocol An object’s public aspect How it is known by other objects as well as end users Other objects communicate with the student object using any of these methods
23
11 23 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Public and Private Aspects of an Object
24
11 24 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel OO Summary: Object Characteristics
25
11 25 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Musical Instruments Class Hierarchy
26
11 26 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Single Inheritance
27
11 27 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Multiple Inheritance
28
11 28 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Motor Vehicle and Bicycle Instance Variables
29
11 29 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Employee Class Hierarchy Method Override
30
11 30 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Employee Class Hierarchy Polymorphism
31
11 31 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Abstract Data Types Differs from conventional data type –ADT’s operations are user-defined –ADT does not allow direct access to its internal data representation or method implementation To create ADT, specify: –Its name –Data representation or instance variables of objects belonging to the abstract data –ADT operations and constraints, both of which are implemented through methods
32
11 32 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Classification Simple object Composite object Compound object Hybrid object Associative object
33
11 33 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Characteristics of an Object Oriented Data Model Support the representation of complex objects Are extensible: –Capable of defining new data types as well as the operations to be performed on them Support encapsulation: –Data representation and method’s implementation must be hidden from external entities
34
11 34 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Characteristics of an Object Oriented Data Model ( continued ) Exhibit inheritance: –Object must be able to inherit properties (data and methods) of other objects Support the notion of object identity (OID)
35
11 35 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Comparing the OO and ER Model Components
36
11 36 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Shared Representation for All Objects of the Class Person
37
11 37 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel State of a Person Object Instance
38
11 38 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Defining Three Abstract Data Types
39
11 39 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Representation for Instances of the Class Person with ADTs
40
11 40 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object State for an Instance of the Class Person, Using ADTs
41
11 41 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Referential Object Sharing
42
11 42 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Class Hierarchy
43
11 43 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Employee Object Representation
44
11 44 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Class Hierarchy for the EDLP Retail Corporation
45
11 45 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Representing a 1:M Relationship
46
11 46 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Representing 1:1 and 1:M Relationships
47
11 47 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Employee-Dependent Relationship
48
11 48 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Representing the M:N Relationship
49
11 49 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Representing the M:N Relationship with Associated Attributes
50
11 50 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Representing the M:N Relationship with Intersection Class
51
11 51 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Space Representation
52
11 52 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Late and Early Binding: Use and Importance Late binding: –Data type of an attribute is not known until execution time or runtime –Two different object instances of the same class can contain values of different data types for the same attribute Early binding: –Allows database to check data type for each of the attribute’s values at compilation or definition time
53
11 53 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel INVENTORY Table with Predetermined (Base) Data Types
54
11 54 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Inventory Class with Early Binding
55
11 55 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel OODM Inventory Class with Late Binding
56
11 56 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Support for Versioning Allows users to track history of changes in state of an object If the changes do not yield expected results, they can be undone and the component restored to its original state Reason OODBMS is such a strong player in the CAD and computer-aided manufacturing (CAM) arenas
57
11 57 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel OODM and Previous Data Models: Similarities and Differences OODM object resembles entity and tuple in the ER and relational models but has additional characteristics Class Hierarchies Encapsulation Object ID (OID) not supported Relationships OODM produces a schema in which relations form part of the structure of the database
58
11 58 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel An Invoice Representation
59
11 59 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Oriented Database Management Systems Integrate benefits of typical database systems with the more powerful modeling and computational (programming) characteristics of the object oriented data model Used to develop complex systems
60
11 60 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Oriented Database Management Systems Result of combining OO features, such as –class inheritance –encapsulation, and –polymorphism, With database features such as –data integrity, -- data manipulation, –security, -- system tuning and –persistence, -- recovery –transaction management, –concurrency control, –backup,
61
11 61 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Object Oriented Database Management Systems
62
11 62 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel The Thirteen OODBMS Rules
63
11 63 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel How Object Orientation Affects Database Design Relational and ER models sometimes cannot adequately represent some objects Operations are not a part of the database model Object oriented design requires the database description to include objects and their data representation, constraints, and operations Few computerized OODB design tools exist Lack of standards affects object oriented database design
64
11 64 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel OODBMS: Advantages and Disadvantages OODBMS occupies a strong niche market Vehicle for technological innovation Has not been the beneficiary of market share growth
65
11 65 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel How OO Concepts Have Influenced the Relational Model RDBMS is beginning to reach its limits in a business data environment that is changing with the advent of mixed-media data storage and retrieval
66
11 66 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel How OO Concepts Have Influenced the Relational Model Extended relational model (ERM), or object/relational model (O/RM) –Extensibility of new user-defined (abstract) data types –Complex objects –Inheritance –Procedure calls (rules or triggers) –System-generated identifiers (OID surrogates)
67
11 67 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel The Next Generation of Database Management Systems Likely to incorporate features borrowed from object oriented database systems, artificial intelligence systems, expert systems, distributed databases, and the Internet Enable future DBMSs to handle more complex problems with both normalized and nonnormalized data OODBMS will probably continue to occupy a niche within the database market
68
11 68 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Summary Object oriented concepts are derived from OO programming languages An object is a conceptual representation of a real-world entity Similar objects are grouped in classes Classes are organized into a class hierarchy Abstract data types are implemented through classes The OO data model allows the designer to create a more authentic representation of real-world objects
69
11 69 Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Summary ( continued ) OODBMSs combine OO features with database features OODBMSs yield several benefits over conventional DBMSs –more semantic information in the database –support for complex objects –better performance in complex applications –reusability of classes –extensibility of the data types supported by the database
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.