Object-Oriented Databases

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

An Object/Relational Mapping tool Free and open source Simplifies storage of object data in a relational database Removes the need to write and maintain.
Limitations of the relational model 1. 2 Overview application areas for which the relational model is inadequate - reasons drawbacks of relational DBMSs.
OO databases 1 Object Oriented databases. OO databases 2 Developing OODBMS - motivation motivation more and more application areas require systems that.
Chapter 10: Designing Databases
Database Systems: Design, Implementation, and Management Tenth Edition
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
OBJECTS Object Oriented ???????. OBJECTS Object-Oriented n OO convenient label for a collection of interconnected ideas n OO approach views computer.
Advanced Topics COMP163: Database Management Systems University of the Pacific December 9, 2008.
Chapter 2 Database Environment. Agenda Three-Level ANSI-SPARC Architecture Database Languages Data Models Functions of DBMS Components of DBMS Teleprocessing.
Chapter 1: Data Models and DBMS Architecture Title: What Goes Around Comes Around Authors: M. Stonebraker, J. Hellerstein Pages: 2-40.
Object-Oriented Databases
Copyright © 2004, Dr. Guimaraes OODBMS & ORDBMS Class Will Start Momentarily… Dr. Mario Guimaraes.
Object-Oriented Methods: Database Technology An introduction.
Dr. Kalpakis CMSC 461, Database Management Systems Introduction.
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Chapter 24 Introduction to Object DBMSs Prepared by Kai Huang CS157B Prof Sin-Min Lee.
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
Limitations of the relational model. Just as the relational model supplanted the network and hierarchical model so too will the object – orientated model.
11 1 Object oriented DB (not in book) Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Learning objectives: What.
E.Bertino, L.Matino Object-Oriented Database Systems 1 Chapter.1 Introduction Seoul National University Department. of Computer Engineering OOPSLA Lab.
1 Object Databases: Introduction. 2 Why OO? v Relational Systems are limited: –Structural restrictions on data –Missing semantics (value-based relationships)
1 CS 430 Database Theory Winter 2005 Lecture 17: Objects, XML, and DBMSs.
MULTIMEDIA DATABASES -Define data -Define databases.
Chapter 2 Database Environment. Agenda Three-Level ANSI-SPARC Architecture Database Languages Data Models Functions of DBMS Components of DBMS Data Dictionary.
1 CS457 Object-Oriented Databases Chapters as reference.
OODBMS: Introduction and Logical Database Design
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
Databases and Database User ch1 Define Database? A database is a collection of related data.1 By data, we mean known facts that can be recorded and that.
Programming Languages 2nd edition Tucker and Noonan
Databases and DBMSs Todd S. Bacastow January
CS 325 Spring ‘09 Chapter 1 Goals:
Databases and DBMSs Todd S. Bacastow January 2005.
Architecture & Data Models
Object Management Group Information Management Metamodel
Datab ase Systems Week 1 by Zohaib Jan.
Chapter 2 Database Environment.
An Introduction to database system
COMSATS INSTITUTE OF INFORMATION TECHNOLOGY, VEHARI
Database Management:.
Object-Oriented Database Management System (ODBMS)
Chapter 1: Introduction
Object-Oriented Databases
Database Management System
Object-Relational DBMSs
Chapter 12 Outline Overview of Object Database Concepts
Chapter 2 Database Environment.
Introduction to Database Systems
Chapter 2 Database Environment Pearson Education © 2009.
Chapter 2 Database Environment.
Data, Databases, and DBMSs
MANAGING DATA RESOURCES
Chapter 6 System and Application Software
File Systems and Databases
Lec 3: Object-Oriented Data Modeling
ISC321 Database Systems I Chapter 10: Object and Object-Relational Databases: Concepts, Models, Languages, and Standards Spring 2015 Dr. Abdullah Almutairi.
Chapter 1: The Database Environment
Analysis models and design models
Highlights of Object-Database Systems
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 6 System and Application Software
Chapter 6 System and Application Software
Chapter 2 Database Environment Pearson Education © 2009.
Chapter 2 Database Environment Pearson Education © 2009.
Chapter 1: Introduction
The Database Environment
Chapter 6 System and Application Software
Presentation transcript:

Object-Oriented Databases Chapter 22 12/1/97

Limitations of the Relational Model limited constraints expressible limited types of relationships normalization leads to atomization, inefficiency Limited built-in datatypes No support for multimedia types: images, video, sound, designs, texts, etc. BLOBs (binary large objects) are one workaround 12/1/97

Language Fit COBOL and DB grew up together COBOL pioneered the "record" construct character-based types Poor fit to today's languages like C++ 12/1/97

Versioning In some applications, old versions of data must be accessible designs (architecture, CAD, etc.) documents multimodule systems Often are complex relationships between versions Not necessarily an OO concept. 12/1/97

A Look Back Before we look ahead... Hierarchical and Network (CODASYL) models were popular before relational Network had extremely rich semantics Complex relationships directly expressed (no joins) Primarily "navigational" Custom programs locate data via knowledge of schema, following pointers No standardized query languages 12/1/97

Object-Oriented Trends Trends in OO Programming seem promising for databases Rich, user-defined data types (support of new media, lift 1NF restriction) Inheritance (important type of relationship) Encapsulation of data and functions Increasing emphasis on components and reusability; cross-platform Tighter integration with C++ 12/1/97

Review of OO Programming Concepts Class: description of data structure and operations (i.e. a data type) encapsulation: data and ops are wrapped together; only an interface is externally visible. Object: an instance of a class Class B inherits from class A: B has all the properties of A, plus some new or altered properties (data/functions) 12/1/97

Strict OO Viewpoint Where possible: model the behavior and relationships of the real world Everything is an object Objects communicate only by passing messages In practice, a message is a function name plus a set of arguments Types can be determined at run-time Smalltalk is the model: untyped; interpreted; interactive 12/1/97

Hybrids and Compromises Example: C++ retains all features of non-OO C language, adds classes, inheritance, polymorphism OODBs tend to be compromises May retain relational facilities: ORDBMS Add OO features such as: user-defined types & classes, inheritance, etc. Add features like "persistence" and versioning SQL3 will have OO features 12/1/97

OIDs Object Identifiers (OID) Unique (database-wide) identifier for each object independent of key One object can reference another via OID Allows complex embedding 12/1/97

Challenges for Query Languages DDL: coordinating PL with QL Encapsulation issues how much is visible? must all operations be predefined? Multimedia what does "query" mean? how to display results? 12/1/97

Persistence The idea: it's easy for a program to work with a complex data structure in memory, but hard to flatten it into a file. It would be convenient if some variables were persistent, i.e., could exist on disk between executions of the program, i.e., be part of the DB. Not strictly on OO concept One challenge: mapping OIDs between in-memory pointers and disk addresses "pointer swizzling" 12/1/97

Deductive Databases Another (non-OO) approach to relieving relational limitations DB viewed as a set of facts and rules a row can be viewed as a fact which satisfies a predicate Logic-based languages Datalog: DB extension of Prolog Excellent at expressing complex constraints, making deductions and discoveries, etc. 12/1/97