next up previous
Next: References Up: Object-Relational Databases Previous: Creation of Complex Values

Comparison of Object-Oriented and Object-Relational Databases

  1. Object-relational databases are object-oriented databases built on top of the relational model.

    The declarative nature and limited power of the SQL language provides good protection of data from programming errors, and makes the high-level optimization, such as reducing I/O, relatively easy.

    Object-relational systems aim at making data modeling and querying easier by using complex data types. Typical applications include storage and querying of complex data, including multimedia data.

  2. Persistent programming language-based OODBs target applications of that form that have high performance requirements: no data translation needed, low-overhead access to persistent data, but more susceptible to data corruption to programming errors and usually do not have a powerful querying capability. Typical applications include CAD databases.

    This contrasts with a declarative language which imposes a significant performance penalty for certain kinds of applications that run primarily in main memory and that perform a large number of accesses to the databases.

  3. Summary:
    1. relational systems: simple data types, powerful query languages, high protection.
    2. persistent programming language-based OODBs: complex data types, integration with programming languages, high performance.
    3. object-relational systems: complex data types, powerful query languages, high protection.
    Some systems blurs the boundary, e.g., some object-oriented database systems built around a persistent programming language are implemented on top of a relational database system.

Osmar Zaiane
Tue Jul 7 15:03:55 PDT 1998