|
Answer 1:
With an object-oriented database, the relationships
between objects and the constraints on objects are maintained by the
database management system, that is, the object themselves. They
enable support of complex application not supported well by the other models.
They enhance the programmability and performance, improve
navigational access, and simplify concurrency control. They lower the
risks associated with the referential integrity, and
they provide a better user metaphor than the relational model. Object
Oriented Database can store not only complex component but also
larger structure. Object oriented database with large objects do not
suffer a performance degradation because the objects do not need to be
broken apart and reassembled by applications, regardless of the
complexity of the properties of the application objects.
RDBMS were never designed to
allow for the nested structure. These type of applications are
extensively found in CAD/CAE, aerospace, etc.
OODBM can
easily support these applications. Moreover it is much easier and
natural to navigate through these complex structures in form of
objects that
model the real world in OODBMS rather than table, tuples and records
in RDBMS. Relational database have a limited number of simple, built
in data types, such as integer and string, and a limited number of
built in operations that can handle these data types.
Relational database are adequate for accounting or other typical
transaction-processing application where the data types are simple and few in
number.
Object-oriented
databases are suitable for applications where the relationships
among elements in the database carry the key information.
|