Beyond the Relational Model

  Previous section   Next section

Although RDBMSs have been widely accepted for use in typical business applications, such as inventory control, patient management, banking, order processing, and event scheduling, they have proven to be (currently, at least) lacking for such applications as computer-aided design (CAD), geographic information systems (GIS), and multimedia storage systems. Two new database models eventually emerged in response to this problem: the object-oriented database and the object-relational database.

The object-oriented model incorporates all of the characteristics of an object-oriented programming language and essentially relegates the relational database to the status of a data store. The fundamental idea here is that the database developer handles every aspect of the database, including the sets of operations that manipulate the data in the database from within the object-oriented database programming software. No longer is there a clear separation between the database software and the application programming software. (As with any other model, there are pros and cons to this approach.) Versant ODBMS by Versant Corporation and UniData by IBM are two of the most recent examples of object-oriented database software.

Unlike the relational model, which has a solid theoretical basis in two distinct branches of mathematics, the object-oriented database model has no specific theoretical foundation. As such, there is no singular, cohesive consensus as to its definition. There is, however, a version of the model proposed by the Object Management Group (OMG) that has become somewhat of a de facto standard for object-oriented database-management systems.


The OMG is a nonprofit international group that addresses the issues of object standards. It was founded in 1989 and comprises more than 800 member organizations. It is important to note that the OMG is not a standards body, such as the American National Standards Institute (ANSI), but merely an advisory and certification group.

The object-relational model (formerly known as the extended relational data model ), on the other hand, extended the relational database model by incorporating various object-oriented elements and characteristics, such as classes, encapsulation, and inheritance. The idea was that these extensions would allow a relational database to manage and manipulate more complex types of data, such as audio streams, video clips, and architectural drawings. Though many in the database industry believed this to be a move in the right direction, they still maintained that it did not go far enough to deal with advanced database applications. The model is still being refined and used, however, as evidenced most recently by the entry of IBM's IBM Informix Dynamic Server 9.30.

Object-oriented supporters and relational database proponents are still debating various issues to this day. Both sides agree that the relational database will not work for certain types of applications, but disagree as to the appropriate solution to the problem. The issues are quite complex and well beyond the scope of this work, but suffice it to say that these debates are likely to go on until one side gives up or technology renders them irrelevant.


Part II: The Design Process