List the advantages of OODBMS / Advantages of Object Oriented Database Management Systems / Discuss the various advantages of OODBMS
Advantages
of Object Oriented DBMSs (OODBMS)
- Enhanced modeling
capabilities – it is easy to model the real-world
object as close as possible like the case of Object Oriented Programming
concepts.
- Extensibility – Support for new data types - Unlike traditional
DBMS products where the basic data types are hard-coded in the DBMS and are
unchangeable by the users, with an ODBMS the user can encode any type of
structure that is necessary and the ODBMS will manage that type.
- Removal of impedance
mismatch – Impedance mismatch is a set of
conceptual and technical difficulties that are often encountered when a
relational database management system (RDBMS) is being used by a program
written in an object-oriented programming language or style; particularly when
objects or class definitions are mapped in a straightforward way to database
tables or relational schema. The DML of OODBMS can eliminate the difficulties.
- Expressive power –
provides an ability to handle objects like records in RDBMS. Hence, OODBMS is
more expressive than RDBMS. An object database stores complex data and
relationships between data directly, without mapping to relational rows and
columns, and this makes them suitable for applications dealing with very
complex data.
- Support for schema
evolution
- Support for
long-duration transactions – the process of object
data involves increased complexity. Hence, we need to provide support for
long-duration transactions.
- Applicability to
advanced database applications – enhanced modeling
capabilities of OODBMS makes it usable to application like computer-aided
design (CAD), computer-aided software engineering (CASE), office information
systems (OISs), multimedia systems, and many more.
- Improved performance –
improved performance in the case of object based applications.
- Reusability –
the code can be reused. Inheritance, method support, etc enables the
possibility of reusing the code. An OODBMS can be programmed with small
procedural differences without affecting the entire system
- OODBs eliminate need for
user defined keys - The OODB model has an OID that it is
automatically generated by the system and that guarantees uniqueness to each
object. This, in addition to eliminating the need for user defined keys in the
OODB model, has brought other advantages to OODBs: 1) the OID cannot be
modified by the application; 2) the notion of object identity provides a
separate and consistent notion of identity, which is independent of how an
object is accessed or modeled with descriptive data. Therefore, two objects are
different if they have different OIDs, even if they have the same structures
and the same values for all their properties.
- OODBs reduce need for
Joins - The capability of navigating through object
structures and the resulting path expressions in object attributes gives us a
new perspective on the issue of joins in OODBs. The relational join is a
mechanism that correlates two relations on the basis of values of a
corresponding pair or attributes in the relations. Since two classes in an OODB
may have corresponding pairs of attributes, the relational join (or, explicit
join) may still be necessary in OODBs.