Important Facts Related Object Oriented Database
Object Oriented Database Model: Logical data model that captures the semantics of objects supported in object-oriented programming
Object Oriented Database: Persistent and sharable collection of objects defined by an OODM
Object Oriented Database Management System: Manager of an OODB
What is Object Oriented Database?
Integrate database capabilities with OOP capabilities, the result is an OODBMS
Database objects appear as programming language objects
Extends OOP with transparently persistent data, concurrency control, data recovery, associative queries, and other database capabilities
RDBMS did not take advantage of OO approaches
OO techniques reduce development costs and improve quality by adopting an object-centric view
OO approach involves integrating data and behaviour of a real-world entity
Performance, flexibility, and development cost of OODBMSs are better than RDBMSs or ORDBMSs
Tighter integration between OO languages and DBMS
Main standards body for OODBMSs: Object Database Management Group (ODMG) defines an OODBMS as a system that integrates database capabilities
Features of Object Oriented Database
Object-oriented databases closely relate to OOP concepts
Encapsulation
Abstraction
Inheritance
Polymorphism
Class (entity type): a concept, an abstraction, or a thing that makes sense in an application context
Object: an instance of a class, encapsulates data and behavior
Object’s behavior: depends on its state (value) and the operation being performed
Operation: an action that one object performs in order to give a response to a request
- OODB stores persistent objects permanently in secondary storage
- Allow sharing of objects among multiple programs
- Requires incorporation of other features of DBMS
indexing to locate the objects
concurrency control to share among concurrent programs
recovery from failures
- Interface with one or more OO programming languages to provide persistent and shared object capabilities