Object-Oriented DBMSs - Standards

Authors Avatar

 

Object-Oriented DBMSs - Standards

Abstract

Over the last few years the advent of object-oriented programming and the shortfalls that existed in database technologies with respect to the requirements of today’s more complex applications have led to the development of object-oriented database systems (OODBSs). Compared to traditional relational database technology, object-oriented databases are much more powerful at modeling complex real-world problems. However, unlike relational databases, object-oriented databases are still in their formative years, and as such there is a clear lack of standards regarding the development of them.

This report presents an overview of the development of standards relating to object-oriented database management systems.

Contents

2.0  The Beginnings of OO        

1.0  Introduction

Relational database systems came about in the late 1960’s and at the time they were considered a great improvement over previous database models. There were, and still are mostly used in traditional business systems such as stock and banking for storing large amounts of data. Today relational models are still considered to be a revolution in database technology and because they are so good at managing huge amounts of data are still by far the most widely used databases.

During the 1980’s with the emergence of much more complex applications came the realisation that the relational model showed areas of inadequacy with respect to the complex object relationships and data manipulation required by these newer applications. In comparison to the simplistic model of a relational database system, object-oriented database systems include features that allow for a user-extensible type system, and complex composite data values, thus enabling the modeling of much more complex real-life business and non-business systems.

However, aside from the advantages that object methodologies offer to database technology, there are also some drawbacks, and unlike relational database development, there has been, and still is, a clear lack of formal standards regarding the development of object-oriented databases.

2.0  The Beginnings of OO

Object-oriented research began back in the 1970’s as part of a project at Xerox Palo Alto Research Park (PARC) called Simula. This, along with other recognised concepts evolved into Smalltalk, the first true Object programming language and operating system.

Smalltalk evolved through several versions to become Smalltalk 80, which set a president for other OO languages, such as C, C++, and more recently Java. (see appendix 1 for OO History). Other new OO languages are coming to the fore and are mainly conforming to informal standards, thus making them available to access legacy systems that also conform to these informal standards, and for developing new value chains by connecting these disparate systems.

An example of this is XML. XML (extensible mark up language) is able to demonstrate pages and programs using Browsers such as I.E.2 onwards and Netscape. This enables distribution and availability to users across networks with different media.

Another example is Java. Java is the latest, fully capable, object-oriented language. It has become the ‘vogue’ due to its compatibility with the Internet and Web browsers. It is designed as a portable language that can run on any web-enabled computer via that computer's Web browser. As such, it is fast becoming, the standard Internet and Intranet programming language to date.

The commercial world has taken up EJB (Enterprise Java Beans) which allows for server and client-side transaction processing, access to data stores, directory services and remote objects and has grown in popularity as the e-commerce and small database market has expanded.

2.1  Database development and OO

Within the database community, it was recognized that there were originally several shortcomings with commercial implementations of relational databases. These included the following:

  • Lack of support for new types - e.g., there is no SQL type for jpeg images.
  • Lack of support for composite data vales - e.g., can't store a relation as an attribute value.
  • Difficulties in modeling real life complex systems and events.

Object-oriented database management systems (OODBMSs) first started to be researched in the 1980s. There are now some 20 products available for OO Databases including:

TITANIUM, MATISSE, FastObjects t7, Javlin, PSE Pro for C++ 4.0, PSE Pro for Java 6.05 and ObjectStore Enterprise Edition 6.05. Each of these developers has adhered itself to one of the standards groups.

Over the past few years, developers have reacted by developing OO languages that sit between processing and data storage, this software is known as middleware. These systems allow users to query or process relational or OO databases. The need for these systems has come mainly from large companies wanting to tie in legacy systems, which have come about through mergers or acquisitions. They take advantage of the new technology to leaver more efficiency or value by connecting these disparate systems, and thus save on having to develop a totally new system.

Join now!

There is a diverse range of ‘middleware’ tools available on the market that conform to the ODMG model, an example of such a tool is ‘objectDRIVERTM’.

ObjectDRIVER is a middleware tool with which one can create an ODMG compliant Object Oriented Database Management Systems (OODBMS) on top of heterogeneous Relational Database Management Systems (RDBMS). It offers C++ and Java language bindings and an Object Query Language (OQL) interface. ObjectDRIVER is particularly well suited to:  

1) The reuse of existing databases.

2) The addition of persistence to Object Oriented applications

The ...

This is a preview of the whole essay