What are the benefits of object-oriented database? What is object identity?
The benefits of an object-oriented database are as follows:-
Enriched modeling capabilities
The object-oriented data model allows the ‘real world’ to be modeled more closely. The object, which encapsulates both state and behavior, is a more natural and realistic representation of real-world objects. An object can store all the relationships it has with other objects, including many-to-many relationships, and objects can be formed into complex objects that the traditional data models cannot cope with easily.
Extensibility
OODBMSs allow new data types to be built from existing types. The ability to factor out common properties of several classes and form them into a super-class that can be shared with sub-classes can greatly reduce redundancy within a system and is regarded as one of the main advantages of object orientation. Further, the reusability of classes promotes faster development and easier maintenance of the database and its applications.
Capable of handling a large variety of data types
Unlike traditional databases (such as hierarchical, network, or relational), the object-oriented database is capable of storing different types of data, for example, pictures, voice video, text, numbers, and so on.
Removal of impedance mismatch
A single language interface between the Data Manipulation Language (DML) and the programming language overcomes the impedance mismatch. This eliminates many of the efficiencies that occur in mapping a declarative language such as SQL to an imperative ‘language such as ‘C’. Most OODBMSs provide a DML that is computationally complete compared with SQL, the ‘standard language of RDBMSs.
A more expressive query language
Navigational access from the object is the most common form of data access in an OODBMS. This is in contrast to the associative access of SQL (that is, declarative statements with selection based on one or more predicates). Navigational access is more suitable for handling parts explosion, recursive queries, and so on.
Support for schema evolution
The tight coupling between data and applications in an OODBMS makes schema evolution more feasible.
Support for long-duration, transactions
Current relational DBMSs enforce serializability on concurrent transactions to maintain database consistency. DBMSs use a different protocol to handle the types of long-duration transactions that are common in many advanced database applications.
Applicability to advanced database applications
There are many areas where traditional DBMSs have not been particularly successful, such as Computer-Aided Design (CAD), Computer-Aided Software Engineering (CASE), Office Information systems (OIS), and Multimedia Systems. The enriched modeling capabilities of OODBMSs have made them suitable for these applications.
Improved performance
There have been a number of benchmarks that have suggested OODBMSs provide significant performance improvements over relational DBMSs. The results showed an average 30-fold performance improvement for the OODBMS over the RDBMS.
Object identity
- Object identity is a property of data that is created in the context of an object model, where an object is assigned to a unique internal object.
- Object identity is a fundamental object orientation concept. With object identity, objects can contain or refer to other objects. Identity is a property of an object that distinguishes the object from all other objects in the application.
OID is used for two purposes.
- To identity, each object is unique.
- Make reference to another object.
Properties of OID
- It is unique
- It is system generated
- It is invisible to the user
- It is not possible to perform operations on OID
- It is mutable i.e. once its generated
- It cannot be regenerated
- It has a long integer values
Comments
Post a Comment