1 Object-Oriented Databases n Record-oriented data models are powerful when applied to traditional database applications n However in a relational model,

Slides:



Advertisements
Similar presentations
OO databases 1 Object Oriented databases. OO databases 2 Developing OODBMS - motivation motivation more and more application areas require systems that.
Advertisements

Chapter 10: Designing Databases
Object Oriented Database Group 4 Mathieu Metz Palani Kumaresan Napa Gavinlertvatana Kristine Pei Keow Lee Prabhu Ramachandran.
Object Databases Baochuan Lu. outline Concepts for Object Databases Object Database Standards, Languages, and Design Object-Relational and Extended-Relational.
IiWAS2002, Bandung, Indonesia Teaching and Learning Databases Dr. Stéphane Bressan National University of Singapore.
--The Object Database--1 The Object Database  Object databases integrate database technology with the object-oriented paradigm  In object databases,
ODMG Standard: Object Model1 OBJECT-ORIENTED DATABASE SYSTEMS ODMG Standard: Object Model Susan D. Urban and Suzanne W. Dietrich Department of Computer.
GI Systems and Science January 30, Points to Cover  Recap of what we covered so far  A concept of database Database Management System (DBMS) 
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
ETEC 100 Information Technology
OBJECTS Object Oriented ???????. OBJECTS Object-Oriented n OO convenient label for a collection of interconnected ideas n OO approach views computer.
©Silberschatz, Korth and Sudarshan8.1Database System Concepts Chapter 8: Object-Oriented Databases Need for Complex Data Types The Object-Oriented Data.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
Fundamentals, Design, and Implementation, 9/e Chapter 16 Object-Oriented Database Processing.
Object Oriented Databases - Overview
July 13, 2015ADBS: OODB1 Concepts for Object-Oriented Databases Chapter 20.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11 Object and Object- Relational Databases.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 18 Object Database Management Systems.
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
EER vs. UML Terminology EER Diagram Entity Type Entity Attribute
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide
Java Methods By J. W. Rider. Java Methods Modularity Declaring methods –Header, signature, prototype Static Void Local variables –this Return Reentrancy.
Object-Relational DBMSs By Yao-Wen Tu CS157b12/09/2003 Prof. Sin-Min Lee.
Object and object-relational databases 1. Object databases vs. Object-relational databases Object databases Stores complex objects – Data + functions.
Advanced Database CS-426 Week 2 – Logic Query Languages, Object Model.
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
Relational Data Model, R. Ramakrishnan and J. Gehrke with Dr. Eick’s additions 1 The Relational Model Chapter 3.
11 1 Object oriented DB (not in book) Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Learning objectives: What.
Database System Concepts and Architecture
V. Megalooikonomou Object-Oriented and Object-Relational DBMSs (based on notes by Silberchatz,Korth, and Sudarshan and notes by C. Faloutsos at CMU) Temple.
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
1 Object Databases: Introduction. 2 Why OO? v Relational Systems are limited: –Structural restrictions on data –Missing semantics (value-based relationships)
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
1 CS 430 Database Theory Winter 2005 Lecture 17: Objects, XML, and DBMSs.
ADVANCED DATABASE SYSTEMS DR. FATEMEH AHMADI- ABKENARI SEPTEMBER Object Databases.
Next-generation databases Active databases: when a particular event occurs and given conditions are satisfied then some actions are executed. An active.
1 Chapter 1 Introduction. 2 Introduction n Definition A database management system (DBMS) is a general-purpose software system that facilitates the process.
1 The Relational Model. 2 Why Study the Relational Model? v Most widely used model. – Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. v “Legacy.
Chapter 12: Designing Databases
Chapter 18 Object Database Management Systems. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Outline Motivation for object.
Introduction to Database AIT632 Chapter 1 Sungchul Hong.
1 CS457 Object-Oriented Databases Chapters as reference.
OODBMS: Introduction and Logical Database Design
Chapter 2 Object-Relational DBMSs Chapter 28 in Textbook.
CS451 - Lecture 2 1 CS451 Lecture 2: Introduction to Object Orientation Yugi Lee STB #555 (816) * Acknowledgement:
11-1 CHAPTER 11 Concepts for Object-Oriented Databases.
© D. Wong Security and User Authorization in SQL 8.7 pp. 410  Authorization ID = user name  Special authorization ID: PUBLIC  Privileges for:
The ODMG Standard for Object Databases
Semi-structured Data In many applications, data does not have a rigidly and predefined schema: –e.g., structured files, scientific data, XML. Managing.
Chapter 18 Object Database Management Systems. Outline Motivation for object database management Object-oriented principles Architectures for object database.
The Object-Oriented Database System Manifesto Malcolm Atkinson, François Bancilhon, David deWitt, Klaus Dittrich, David Maier, Stanley Zdonik DOOD'89,
Chapter 20 Concepts for Object-Oriented Databases Copyright © 2004 Pearson Education, Inc.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe Chapter 12 Outline Overview of Object Database Concepts Object-Relational Features Object Database.
1 10 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 10 Designing Databases.
IST 210 Object Oriented Database. IST 210 Object-Oriented Concepts  Abstract Data Types  Class definition, provides extension to complex attribute types.
Faeez, Franz & Syamim.   Database – collection of persistent data  Database Management System (DBMS) – software system that supports creation, population,
Chapter 3 The Relational Model. Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. “Legacy.
12. Chapter 12: Designing Databases Systems Analysis and Design in a Changing World, Fourth Edition 12.
Concepts for Object Databases
CS4222 Principles of Database System
OBJECTS & DATABASES Arnaud Sahuguet – CIS-550.
Object-Oriented Database Management System (ODBMS)
Object-Oriented Databases
Object-Relational DBMSs
Chapter 12 Outline Overview of Object Database Concepts
ISC321 Database Systems I Chapter 10: Object and Object-Relational Databases: Concepts, Models, Languages, and Standards Spring 2015 Dr. Abdullah Almutairi.
Object-Oriented Databases
4/27/2019.
Presentation transcript:

1 Object-Oriented Databases n Record-oriented data models are powerful when applied to traditional database applications n However in a relational model, – data is organized as a flat tuple – the schema are relatively static – relationships among data must be explicitly specified as integrity constraints – traditional models lack functionality in supporting advanced database applications – CAD/CAM and CIM, Image and graphics, Geographic and scientific, multimedia, documents, etc. n Characteristics and requirements – complex structures of objects – new data types for unstructured data (e.g. BLOB) – reactive(endless) activities – long-duration (open-ended) activities – collaborating (cooperative) activities OO Data models and OO database systems are proposed to address these requirements

2 Systems and Interfaces n experimental prototypes – ORION (MCC), OpenOODB (Texas Instruments), IRIS(HP), ODE(ATT Bell Labs), ENCORE/ObServer (Brown),... n commercial OODB Systems – GEMSTONE/OPAL (Servio Logic), O2 (O2 Technology), ObjectStore (Object Design),... n OO Shells or Interfaces – Paradox, Access,..

3 OO Concepts n Concepts are adopted from OO programming languages n Object – is an instance of abstract data type (ADT) – hides the internal data structure (information hiding) – can be accessed and manipulated by the application using a set of operations specific to the ADT (encapsulations) – Objects in programming languages are transient l exist only during program execution – Objects in DB are persistent l they are persistent and can be shared by a number of programs n Class  collections of objects, either implicitly or explicitly specified  contain associated methods, which are algorithms specifying how the objects in that class are to be manipulated n Hierarchy  imposes an acyclic graph structure on the set of classes n an OODBS supports an interface to one or more OO programming languages providing persistent and shared object capabilities while treating transient and persistent objects uniformly n there is no single OO data model. However, there is a set of concepts that an OO data model and OODB must support

4 Example Hierarchies ImageWord HTML Raw text Mac IBM PC Documents Art ScienceNatural History Metropolitan New York Museums Smithsonian Baltimore Aquarium

5 OO Concepts (continued) n Object Identifier: a unique and immutable system-wide id (not true with relational data model) – OODB maintains a direct correspondence between real-world and database objects n Object structure can be of arbitrary complexity in order to contain all significant information (in relational the information is scattered over many relations) n instance variables – Object internal structure includes the specification of instance variables that hold its state. – instance variables could be complex objects themselves n type constructors – complex object structures can be constructed by recursively applying a set of basic type constructors such as tuple, set, list, and bag n encapsulation – complete encapsulation: only a specific set of predefined operations or functions can be applied on a particular object l assumes object independence l does not permit explicit specification of relationships between objects

6 Objects n An object is defined as a pair: (id, values) n Example : declare b2 values [author = John Smith, url = date_created = (15, Jan, 1999) date_last_modified = (25, Jan, 1999) n Types u Record type, Set type, List type n Examples: [author: string; url: urltype; date_created: datetype; date_last_modified: datetype] [address: string; director: string; special_exhibits: {string}; affiliated_museums: {Oid_set}]

7 Operations on Objects n Each operation has two parts – (1) signature or interface: specifies name and arguments of the operation (externally visible) – (2) method or body: specifies the implementation of the operation (externally invisible) n Operations can be invoked by passing a message to an object – objects' internal structure and operations' implementation can be changed without affecting the programs that access them – This provides encapsulation

8 Types, Class Hierarchy and Inheritance n Object type: set of allowable values n Object class: collection of objects meaningful in an application n New types and classes can be specified based on existing ones n Inheritance: new types and classes inherit much of the structure and operations from the type/class they are derived n incremental development of system data type is supported n ability to reuse existing type definitions and implementations

9 Object Definition Language (ODL) n Simple language within which objects and interfaces can be defined n ODL provides a formal syntax to access the signatures of the objects so that external programs wishing to access/manipulate the object using the methods provided by the object n Example : interface html:documents (extent html_documents keys url: persistent { } );

10 Object Query Language (OQL) n If Q is expressed in SQL, then Q is also a valid OQL query n SQL queries can access only flat relational tables n In contrast, objects may have a nested structure, as well as include fields that contain collection types - sets, lists,.. OQL facilitates access to such data types n Examples : select struct(field1:x.url, field2:x.link) from Word x where x.author = “John Smith” select y.author from (select x.link from Word x where x.author = “John Smith”) y

11 Object-Relational Systems n Relational databases have proved very useful in querying flat data n Is it possible to extend the relational model to handle complex data? n Yes, The resulting paradigm is object-relational n Example: u Consider a bank relation schema (Fname, Lname, AccType, Trans, Amount, Day) and a crime relation schema (SSN, FirstName, LastName, Conviction, Day) u Suppose we extended both these schemes to include images as follows: (Fname, Lname, AccType, Trans, Amount, Day, PIC) (SSN, FirstName, LastName, Conviction, Day, PIC)

12 Example Continued n If a customer reports that her ATM card was stolen and she did not make the last withdrawal n To verify, the bank needs to look at the surveillance image and see if it is that of the customer n If not, the next logical step for the police to perform is to attempt check if there is a match between the image in surveillance record with any image in the crime database n This needs execution of the query u “Select all tuples in the crime relation that match the image in customer record” n SQL cannot support such query directly because the comparison operator “match” is not supported by a relational database n An object db language cannot be used either because the data is not stored in an object-oriented db

13 Object-Relational Scheme n Object relational scheme: (A1:T1, … An:Tn) where Ai’s are attribute names and Ti’s are objects n Example: (Fname:str, Lname:str, AccType:int, Trans:tt, Amount:real, Day:date, PIC:image) (SSN:ssntype, FirstName:str, LastName:str, Conviction:str, Day:date, PIC:image) n object conditions u match(image1,image2) > 0.7; u match(image1,image2) > match(image3,image2); n Query select Fname,Lname from Crime C, Bank B where match(B.image1,C.PIC) > 0.9

14 Commercial Object-relational Systems n Informix u offers a variety of datablades for image db, face recognition, audio data handling, document processing, video processing, spatial db n DB2 u offers similar features called extenders n Oracle n Sybase n Uni-Sql and Ominiscience employ O-R technology