Object oriented database management

Embed Size (px)

Citation preview

  • 8/10/2019 Object oriented database management

    1/21

    Object Oriented

    DatabaseByRASHMI RAMESH

    III Year Chemical EngineeringNIT Trichy

    10211205508th October 2014

  • 8/10/2019 Object oriented database management

    2/21

  • 8/10/2019 Object oriented database management

    3/21

    Database Management System

    Clients (Services or applications) interact withdatabases through queries (remote or

    otherwise) to Create, Retrieve, Update andDelete (CRUD) data within a database. Thisprocess is facilitated through a Database

    Management System (DBMS)

  • 8/10/2019 Object oriented database management

    4/21

    Database Management System

    Provides tools for maintenance such as runningsecurity checks, ensuring data integrity, backup

    and recovery.

    Applications : In all sectors of the modern worldbe it in technology oriented companies orhospitals and health care systems.

  • 8/10/2019 Object oriented database management

    5/21

  • 8/10/2019 Object oriented database management

    6/21

    Data Models (Contd.)

    Hierarchical model

    This supports parent-child relationships between data similarto a tree data structure where object types are represented bynodes and their relationships are represented by arcs.

    This model is restrictive in that it only allows one to many

    relationship ( a parent can have many children but a child canonly have one parent)

  • 8/10/2019 Object oriented database management

    7/21

  • 8/10/2019 Object oriented database management

    8/21

    Data Models (Contd.)Object Model

    Reduces the overhead of converting informationrepresentation in the database to an application specificrepresentation.

    Allows for data persistence and storage by storing objects inthe databases.

    The relationships between various objects are inherent in the

    structure of the objects. This is mainly used for complex data structures such as 2D and

    3D graphics which must otherwise be flattened before storagein a relational database.

  • 8/10/2019 Object oriented database management

    9/21

    Object Model

  • 8/10/2019 Object oriented database management

    10/21

  • 8/10/2019 Object oriented database management

    11/21

    Object Oriented DatabaseManagement Systems (OODMs)

    Object database management systems extend the objectprogramming language with transparently persistent data,concurrency control, data recovery, associative queries, andother database capabilities.

    Thus OODB implements OO concepts such as object identity,

    polymorphism, encapsulation and inheritance to provideaccess to persistent objects using any OO-programminglanguage

  • 8/10/2019 Object oriented database management

    12/21

    Objects User defined complex data types. An object has structure or state (variables) and methods

    (behavior/operations). An object is described by four characteristics

    Identifier: a system-wide unique id for an objectName: an object may also have a unique name in DB(optional)Lifetime: determines if the object is persistent or transient

    Structure: Construction of objects using type constructors The state (current value) of a complex object may be

    constructed from other objects (or other values) by usingcertain type constructors.

    Objects (Contd.)

  • 8/10/2019 Object oriented database management

    13/21

    Objects (Contd.) An object is associated with it:

    A set of variables that contain the data for the object.The value of each variable is itself an object.

    A set of messages to which the object responds; eachmessage may have zero, one, or more parameters.A set of methods , each of which is a body of code toimplement a message; a method returns a value as the

    response to the message Messages and responses provide the only external interface to

    an object.

  • 8/10/2019 Object oriented database management

    14/21

  • 8/10/2019 Object oriented database management

    15/21

    Need for Complex Data Types

    Addresses can be viewed as a Single string Separate attributes for each part, or Composite attributes

    (which are not in first normal form) Convenient to store multivalued attributes as-is, without

    creating a separate relation to store the values in first normalform

    Applications :

    computer-aided design, computer-aided software engineeringmultimedia and image databases, and document/hypertextdatabases.

  • 8/10/2019 Object oriented database management

    16/21

    Features Of OODMs

    New features relational & Object oriented

    Relational Features new data types, newpredicates, enhanced semantics, additionalsecurity and an active database.

    Object Oriented Features support for functionsand procedures.

  • 8/10/2019 Object oriented database management

    17/21

  • 8/10/2019 Object oriented database management

    18/21

    Relational and Object Models Queries look very similar in SQL and OQL, sometimes they are

    the same In fact, the results they give are very different Query returns:

    OQL - ObjectSQL - Collection of objects, Tuple, Table

  • 8/10/2019 Object oriented database management

    19/21

    Relational and Object Models(Contd.)

    A method in an object model is defined in the class to whichthe object belongs.

    A stored procedure is a sub-routine available to applicationsand this is external to the database , defined in the datadictionary.

    Example: Stored procedures for data validation OODB is OO language specific whereas Relational DB are

    language independent via SQL No impedance mismatch in applications using OODB where as

    object relational mapping must be performed in relationaldatabase for use in OO applications.

  • 8/10/2019 Object oriented database management

    20/21

    Object Query Language

    Example of OQL with integration to OO Language: Create objects as in OO languages and then make them

    persistent using the set() method on the database.

    Person p1 = new Person(Pikes Peak", 78); db.set(p1); Retrieve by age (null default for string)

    Person p = new Person (null, 35); ObjectSet result = db.get(p);

  • 8/10/2019 Object oriented database management

    21/21

    Thank You