What is a hybrid database, and what are the advantages and disadvantages of hybrid over relational or object oriented databases?
An object oriented database (OODBMS) is one built using a pure object model, although most experts will accept close approximations of a pure object model. Pure object oriented databases can only be used by pure object-oriented languages such as Smalltalk, or one of its close derivatives. The close approximations to an OODBMS can be accessed by most of the object-oriented languages such as C++. In a pure OO environment, an OODBMS allows the developer to think in purely object oriented terms, making the system more consistent (orthagonal) and often times that makes it more reliable.
A relational database is one built using the relational data model. This is by far the most common kind of database today, built using tools like DB2, MS SQL Server, Oracle, etc. Relational databases are much less expensive to buy than true object-oriented databases, they generally perform much better (on comparable hardware), and it is far easier for me to find relational database expertise than it is to find OODBMS expertise.
A hybrid database is usually an object-oriented framework created to act as an interface between an "impure" object-oriented language like C++ and a relational database manager. The hybrid manager allows the language to access the database as though it were truly object-oriented, while leaving the database itself unchanged. The hybrid design allows the object-oriented programmer to use nearly any OOP feature that they want (much like an OODBMS), while keeping the database itself relational which allows the use of commercially available and supported products, allowing the "best of both worlds" at the cost of the run-time overhead to support the hybrid framework.
For More Information
- Dozens more answers to tough database design questions from Pat Phelan
- The Best Database Design Web Links: tips, tutorials, scripts, and more
- Have an Oracle or SQL tip to offer your fellow DBAs and developers? The best tips submitted will receive a cool prize. Submit your tip today!
- Ask your database design questions -- or help out your peers by answering them -- in our live discussion forums.
- Ask the Experts yourself: Our SQL, database design, Oracle, SQL Server, DB2, metadata, object-oriented and data warehousing gurus are waiting to answer your toughest questions.