Object Oriented Databases
OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar
Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar - - PowerPoint PPT Presentation
Object Oriented Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Executive Summary The presentation on Object Oriented Databases gives a basic introduction to the concepts governing OODBs and looks at its details
OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar
The presentation on Object Oriented Databases
The reader will gain insight into databases, data
Databases History Types of Data Models Object Oriented Databases Concepts Architecture ODL OQL OODB v/s Relational Database OODBMS
A database is a an organized collection of related
The data within a database is structured so as to
Clients (Services or applications) interact with
Example: A database designed to store the
Computerized Databases evolved with DBMS in
In the 1970s the main objective of database
The first generation of databases were
This was followed by the relational model which
Relational models were limiting in the kind of
In the 1980s With the advent of Object Oriented
The type of a database is decided by the data
The major types of data models in the history of
Hierarchical model contains data organized
Network Model is similar to the hierarchical
Relational Model organizes data into two
Object Model aims to reduce the overhead of
Object oriented databases or object databases
Object database management systems extend
The Object-Oriented Database System Manifesto
Thus OODB implements OO concepts such as
The tight integration between object orientation
Object oriented databases are designed to work
According to existing application requirements,
Standalone OODB where all of the data
Object Relational DBMS: OODB acts as a staging
In the first case, the database supports object
Example: if class ‘A’ extends class ‘B’, they
The second approach towards an OODB
Object Data Management Group (ODMG) put
Object Definition Language: ODL is the
Example: Class declarations
ODL creates a layer of abstraction making data
ODL defines three components of the object
Abstraction Inheritance Encapsulation
In OODB, abstract data model is implemented
Object instance: An entity in an object model is
Object identification: Every object instance has
Object Class: Similar object instances are
Object reference or relationships: The object
Encapsulation in the object model concept allows
This includes an interface and an implementation
Derived directly from object oriented
Developed by ODMG, Object Query Language
Like SQL, it is a declarative language. Based
Query Structures look very similar in SQL and OQL
Example: OQL query to obtain Voter names who
Result from SQL Result from OQL table with rows collection of objects
More example of OQL with integration to OO
Create objects as in OO languages and then
Retrieve by age (null default for string)
A method in an object model is defined in the
A stored procedure is a sub-routine available to
Example: Stored procedures for data validation OODB is OO language specific whereas Relational
No impedance mismatch in applications using
Advantages Can handle large collections of complex data
Expressive data relationships Version control for evolving classes and projects Efficiently handles many-to-many relationships Real world OODBMS products: db4o – database for objects InterSystems Objectivity.Inc Versant
Wikipedia The Object Oriented Database System
Various other online sources