Module - 4
Module - 4
Computer
Systems Object Database
Technology
U.S. DEPARTMENT OF
Management Systems:
COMMERCE
National Institute of
Standards and
Concepts and Features
Technology
Christopher E. Dabrowski
A111D3 3aTS7t,
REFERENCE
NIST
PUBLICATIONS
-QC"
100
U57
500-179
1990
NATIONAL MSTrrUTE OF STANDARDS &
TECHNOLOGY
Research Informatm Center
MD
Gaithersburg, 20899
NIST Special Publication 500-179
t
Object Database
Management Systems:
Concepts and Features
Christopher E. Dabrowski
Fong
Elizabeth N.
Deyuan Yang
April 1990
The National Institute of Standards and Technology (NIST) (formerly the National Bureau of Standards)
has a unique responsibility for computer systems technology within the Federal government. NIST's
National Computer Systems Laboratory (NCSL) develops standards and guidelines, provides technical
assistance, and conducts research for computers and related telecommunications systems to achieve
more effective utilization of Federal information technology resources. NCSL's responsibilities include
development of technical, management, physical, and administrative standards and guidelines for the
cost-effective security and privacy of sensitive unclassified information processed in Federal computers.
NCSL assists agencies in developing security plans and in improving computer security awareness train-
ing. This Special Publication 500 series reports NCSL research and guidelines to Federal agencies as well
as to organizations in industry, government, and academia.
For sale by the Superintendent of Documents, U.S. Government Printing Office, Washington, DC 20402
PREFACE
iii
ABSTRACT
ACKNOWLEDGMENTS
V
TABLE OF CONTENTS
1.0 INTRODUCTION 1
1.1 Motivation 1
1.2 New Requirements for Database Management Systems 2
1.3 New Possibilities in Database Management Systems 2
1.4 The Outline of this Report 3
vii
7.0 RECENT DEVELOPMENTS IN ODBMS 41
7.1 Extending OOPL to Include DBMS Functions ... 41
7.2 Extending Conventional or Relational DBMS ... 41
7.3 Review of ODBMS ................ 43
7.4 Standardization 44
APPENDIX - GLOSSARY 57
viii
1.0 INTRODUCTION
1.1 Motivation
1
object database management system is and how it differs from
traditional database management systems.
2
ODBMS have some features not traditionally present in
conventional database management systems. The object data
model permits representation of complex data structures and
type hierarchies and provides the ability to define data types
that combine both data structure and procedure definition.
This results in much greater flexibility in the representation
of structure and behavior in real-world systems.
3
2.0 OVERVIEW OP OBJECT CONCEPTS
There is no single agreed upon definition of what the terms
"object" and "object-oriented" mean. The term "object-
oriented" was originally associated with developments in
programming languages in the 1970s. More recently, new
approaches to data modeling and database managements have
begun to incorporate what are now called simply "object" con-
cepts.^
5
DIRECTION, AIRCRAFT-GROUNDSPEED, AIRCRAFT-POSITION, and
AIRCRAFT-FUEL-CONSUMPTION. AIRCRAFT can also have defined
procedures to carry out its operations: SET-ALTITUDE, SHOW-
DIRECTION, COMPUTE-GROUNDSPEED, SHOW-GROUNDSPEED, COMPUTE-
FUEL-CONSUMPTION, SHOW-FUEL-CONSUMPTION, etc.
6
2.3 Encapsulation of Objects
The details of the operation performed are not specified
in the message and are not visible to the message sender. An
object's internal state is accessible only by the object
itself. An object's data structures may not be accessed and
updated directly by an external agent, but can only be
effected indirectly through message passing and method
invocation. This characteristic hiding of the object's
internal state is known as object encapsulation Intuitively,
.
7
particular application. Each object is an instance of one of
the classes and has the same data structures provided in its
class description. However, the object ID or handle of each
instance is unique, and the internal states of different
instances, e.g., the values of their instance variables, may
differ. Each object responds to the same messages and
implements the same operations defined in the methods of the
object's class.
2 . 5 Inheritance
8
tion of the class AIRCRAFT, but also one of its own: NUM-
BER_OF_PASSENGERS . All instances of PASSENGER_AIRCRAFT will
have the instance variables of AIRCRAFT, but will also have
NUMBER_OF_PASSENGERS
Similarly, PASSENGER_AIRCRAFT may inherit SHOW-GROUNDSPEED
and SHOW-DIRECTION methods from AIRCRAFT, but have a separate
SET-ALTITUDE method defined for it with special constraints
on maximum rates of descent. The SET-ALTITUDE method defined
in PASSENGER_AIRCRAFT replaces or shadows the method of the
same name defined in AIRCRAFT. Additional methods may also
be defined for PASSENGER-AIRCRAFT giving it the capability to
respond to messages that its superclass cannot.
AIRCRAFT
9
. .
10
2.8 Composite Objects
Composite objects or complex objects
^ , are among the most
recent developments in object technology. A composite object
is made up of other objects. In other words, it is con-
structed from a collection of parts, each of which is itself
an object.
AIRCRAFT
11
3.0 OBJECT-ORIENTED PROGRAMMING LANGUAGES
13
More recently, a number of commercial programming lan-
guages have facilities which include at least some of the
object concepts presented in section 2. These include such
languages as ADA and OBJECT PASCAL.
o message passing,
o definition of class methods,
o run time binding.
o class inheritance,
o polymorphism.
14
to data are not generally available in programming languages.
15
4.0 DATABASES, DATA MODELS, AND DATABASE MANAGEMENT SYSTEMS
4 . 1 Databases
17
the database. The operations usually include create, delete,
update, and search of data.
Not all DBMS provide the same set of features, and varying
degrees of functionality exist for the same features. Some
essential features generally supported by a modern DBMS are
summarized as follows:
o Persistence
o Data Sharing
o Recovery
o Database Language
18
4.4 Databases, Database Management Systems, and Database
Systems
o Database (DB)
19
5.0 THE OBJECT DATA MODEL
21
example, the class PERSON has an attribute SPOUSE whose
data type is also PERSON.
22
5.3 The Integrity Rules of the Object Data Model
5.4 The Object Data Model versus the Relational Data Model
While the pure object theorist may not agree with equating
object data model concepts with those of the relational data
model, the following tables provide such equivalences. It is
presented not to demonstrate any direct equivalence, but is
intended to serve merely as an intuitive aid for persons
already familiar with mature database technology.
23
Table 5.1. Comparison of Structure
24
Table 5.3. Comparison of Integrity Rules
25
6.0 THE ODBMS ARCHITECTURE AND FEATURES
27
OBJECT
MRNRGER
OBJECT
SERUER
PERSISTENT
OBJECT STORE
28
External end users and application developers may use
software tools such as text editors, graphics editors, class
and object browsers, automated database design aids, and
CAD/ CAM design system interfaces. These systems may serve as
front-end tool kits that interface with the Object Manager.
29
.
30
The ODBMS can be expected to interface to one or more commer-
cial object-oriented programming languages. The issue of
having one database language for all OOPL interfaces is
discussed in section 7.
As stated in section 5.2, class definitions (including
methods) are implemented as class objects. DDL statements to
create class definitions are messages to a generic class, or
metaclass, to create an instance of itself, e.g., a class
object. Therefore, in keeping with the object paradigm, all
of the operations specified by the ODBMS database language can
be implemented through message passing.
o Session Control
31
o Dispatch of Object Requests and Object Updates
o Query Translation
To support an ad hoc query language, an ODBMS should have
a query translator and perhaps a query optimizer. Queries
can be translated into execution plans in which selection
and retrieval of objects is accomplished through message
passing. This presupposes that the message protocol for
the object's class is defined to permit access to the
instance variables necessary to select the object. Support
for ODBMS query languages raises issues that will be dis-
cussed in section 7.
32
o Dyneunic Class Redefinition (Schema Evolution)
o Recovery
33
tion log must be maintained for this purpose. This is a
service provided by most commercial DBMS.
34
being studied extensively in universities and research
institutions, but have not yet been commercialized.
6 . 6 Storage Management
o Backup/Archiving Facilities
35
o Support for Access Paths
o Object Clustering
36
.
o Security
o Semantic Integrity
37
CflD DESIGNER 1 CRD DESIGNER 2
OBJECT OBJECT
MflNflGER 1
MflNflGER 2
OBJECT
SERUER 1
GRRPHICRL CRD
EDITOR DESIGNER 3
OBJECT OBJECT
MflNflGER 3 MflNflGER 4
OBJECT
SERUER 2
38
In some implementations, the functions of the Object Seirver
can be partially implemented by a relational DBMS. In this
case, the Server consists of two distinct components: a front-
end module which maintains an internal representation of a
limited portion of the object data model and handles requests
for objects in the form of Object IDs, and a back-end rela-
tional DBMS which is responsible for transaction management
and storage of object data in relational tables. The back-
end component may itself exist on a different platform. In
such cases, a specialized remote data access (RDA) protocol
based on the SQL standard can be used. Currently, an RDA
standard is under development [IS089].
39
7.0 RECENT DEVELOPMENTS IN ODBMS
41
application developer with both the ability to design database
systems based on a richer and more expressive data model and
the data management services needed for application domains
which cannot easily make use of conventional DBMS.
42
o Support for Versioning and Long Duration Transactions
7 . 3 Review of ODBMS
43
7.4 Standardization
44
8.0 ISSUES AND CONCLUSIONS
8.1 Issues
45
.
o Object Boundary
46
also be retrieved? Determining the extent or scope of the
CARGO_AIRCRAFT object is part of the object boundary issue.
The answer may depend on the semantics of a particular
application. This question has important implications for
performance, access methods, and concurrency control e.g. ,
The OOPL and the DBMS are generally not integrated, and may
be considered separate components. An ODBMS may also have
to interface with application development tools that use
different OOPLs, such as Smalltalk or C++. An important
issue is ensuring that the ODBMS and the different OOPLs
share a common data model, and that they also share a
single database language for defining the database schema
and for performing data manipulation operations. There
should also be a common query language which can be used
both in application programs and by external users.
8.2 Conclusions
47
It is possible that a new collection of federated heteroge-
neous databases will emerge to tie together object-oriented,
relational, and high-throughput transaction-oriented systems.
However, it will likely take another 5 to 10 years before such
technology is commercially accepted.
48
.
1988
49
. .
9, 9, 1966, 671-678.
48-69
1988.
50
[GARZ88] Garza, J., and Kim, W. "Transaction Management in
an Object-Oriented Database Systems," SIGMOD
Records Vol 17, No. 3 September 1988.
.
1987.
1988.
Verlag, 1988.
1983.
51
[JOSE89] Joseph, J.V. et al. "Object-Oriented Databases:
Design and Implementation," Draft Report from Texas
Instruments, 1989.
pp 6-17.
[MAIE86a] Maier, D. Otis, A.,
, and Purdy, A. "Object-
Oriented Database Development at Servio Logic,"
Database Engineering 18:4, December 1986.
,
1986.
52
,
MA 1987, pp 355-392.
53
"
1986.
June 1987.
1987, 227-241.
181.
54
[ZDON90] Zdonik, S. B., and David, M. (eds.) Readings in
Object-Oriented Database Systems Morgan Kaufmann
,
55
APPENDIX - GLOSSARY
Active Database:
Attribute:
Class:
Class Object:
Class Hierarchy:
57
Class Library:
Code Reuse:
The ability to use a single piece of code for more than one
purpose in a computer application. When a superclass
"•
definition is inherited by a subclass, the code associated
with the superclass definition, including method defini-
tions, is reused in the subclass. Code reuse has the
effect of reducing the amount of code needed to implement
an application.
Concurrency Control:
Data Abstraction:
Data Model:
Database Schema:
58
:
.
Dyneunic Binding:
Encapsulation
Entity:
Extensibility:
Generalization:
Handle:
59
Inheritance:
Instance:
Instance Variable:
Message:
Message Passing:
Method:
Multiple Inheritance:
Object:
60
: :
Object Server:
Part Hierarchy:
Persistence:
Polymorphism:
Protocol
Referential Integrity:
61
.
Shadowing:
Specialization:
State:
Subclass:
Superclass:
62
NIST-114A U.S.DEPARTMENT OF COMMERCE 1. PUBUCATION OR REPORT NUMBER
(REV. 3-89) NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY NIST/SP-500/179
2. PERFORMINQ ORGANIZATION REPORT NUMBER
5. AUTHOR(S)
Same as item #6
The last decade has seen the emergence of object concepts and their infusion
into information systems technology. This phenomenon began with the advent
of programming languages that included object concepts. More recently,
object concepts have been merged with database management system technology,
resulting in the production of some object database management systems. As
a result, the term object database management system (ODBMS) is now becoming
a recognized and important topic in the database community. The purpose of
this report is to provide managers and software analysts a state-of-the-art
review of object concepts and to describe features associated with object
database management systems.
12. KEY WORDS (6 TO 12 ENTRIES; ALPHABETICAL ORDER; CAPITALIZE ONLY PROPER NAMES; AND SEPARATE KEY WORDS BY SEMICOLONS)
class; database; database management system; object; object-oriented; object
database management system; ODBMS.
ELECTRONIC FORM
ANNOUNCEMENT OF NEW PUBLICATIONS ON
COMPUTER SYSTEMS TECHNOLOGY
Superintendent of Documents
Government Printing Office
Washington, DC 20402
Dear Sir:
Name
Company
Address
—
Journal of Research of the National Institute of Standards and Technology Reports NIST research
and development in those disciplines of the physical and engineering sciences in which the Institute
is active. These include physics, chemistry, engineering, mathematics, and computer sciences.
Papers cover a broad range of subjects, with major emphasis on measurement methodology and
the basic technology underlying standardization. Also included from time to time are survey articles
on topics closely related to the Institute's technical and scientific programs. Issued six times a year.
Nonperiodicals
Monographs — Major contributions to the technical literature on various subjects related to the
and technical
Institute's scientific activities.
Handbooks — Recommended codes of engineering and industrial practice (including safety codes) de-
veloped in cooperation with interested industries, professional organizations, and regulatory bodies.
Special Publications — Include proceedings of conferences sponsored by NIST, NIST annual reports,
and other special publications appropriate to this grouping such as wall charts, pocket cards, and
bibliographies.
Applied Mathematics Series — Mathematical tables, manuals, and studies of special interest to physi-
cists, engineers, chemists, biologists, mathematicians, computer programmers, and others engaged in
scientific and technical work.
—
National Standard Reference Data Series Provides quantitative data on the physical and chemical
properties of materials, compiled from the world's literature and critically evaluated. Developed un-
der a worldwide program coordinated by NIST under the authority of the National Standard Data
Act (Public Law 90-396). NOTE: The Journal of Physical and Chemical Reference Data (JPCRD)
is published quarterly for NIST by the American Chemical Society (ACS) and the American Insti-
tute of Physics (AIP). Subscriptions, reprints, and supplements are available from ACS, 1155 Six-
teenth St., NW., Washington, DC20056.
Building Science Series — Disseminates technical information developed at the Institute on building
materials, components, systems, and whole structures. The series presents research results, test
methods, and performance criteria related to the structural and environmental functions and the
durability and safety characteristics of building elements and systems.
—
Technical Notes Studies or reports which are complete in themselves but restrictive in their treat-
ment of a subject. Analogous to monographs but not so comprehensive in scope or definitive in
treatment of the subject area. Often serve as a vehicle for final reports of work performed at NIST
under the sponsorship of other government agencies.
—
Voluntary Product Standards Developed under procedures published by the Department of Com-
merce in Part 10, Title 15, of the Code of Federal Regulations. The standards establish nationally
recognized requirements for products, and provide all concerned interests with a basis for common
understanding of the characteristics of the products. NIST administers this program as a supplement
to the activities of the private sector standardizing organizations.
—
Consumer Information Series Practical information, based on NIST research and experience, cov-
ering areas of interest to the consumer. Easily understandable language and illustrations provide use-
ful background knowledge for shopping in today's technological marketplace.
Order the above NIST publications from: Superintendent of Documents, Government Printing Office,
Washington, DC 20402.
—
Order the following NIST publications FIPS and NISTIRs—from the National Technical Information
Service, Springfield VA 22161.
—
Federal Information Processing Standards Publications (FIPS PUB) Publications in this series col-
lectively constitute the Federal Information Processing Standards Register. The Register serves as
the official source of information in the Federal Government regarding standards issued by NIST
pursuant to the Federal Property and Administrative Services Act of 1949 as amended, Public Law
89-306 (79 Stat. 1127), and as implemented by Executive Order 11717 (38 FR 12315, dated May 11,
1973) and Part 6 of Title 15 CFR (Code of Federal Regulations).
NIST Interagency Reports (NISTIR) —Aspecial series of interim or final reports on work performed
by NIST for outside sponsors (both government and non-government). In general, initial distribu-
tion is handled by the sponsor; public distribution is by the National Technical Information Service,
Springfield, VA 22161, in paper copy or microfiche form.
U.S. Department of Commerce
National Institute of Standards and Technology
(formerly National Bureau of Standards)
Gaithersburg, MD 20899
Official Business
Penalty for Private Use $300