1 CS 430 Database Theory Winter 2005 Lecture 17: Objects, XML, and DBMSs.

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
Native XML Database or RDBMS. Data or Document orientation If you are primarily storing documents, then a Native XML Database may be the best option.
Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 1/1 Copyright © 2004 Please……. No Food Or Drink in the class.
Object Databases Baochuan Lu. outline Concepts for Object Databases Object Database Standards, Languages, and Design Object-Relational and Extended-Relational.
Third-Generation Database System Manifesto
CMPT 354, Simon Fraser University, Fall 2008, Martin Ester 28 Database Systems I The Relational Data Model.
Data Management Design
Geographic Information Systems
1 Database Systems (Part I) Introduction to Databases I Overview  Objectives of this lecture.  History and Evolution of Databases.  Basic Terms in Database.
Data Management I DBMS Relational Systems. Overview u Introduction u DBMS –components –types u Relational Model –characteristics –implementation u Physical.
1 Lecture 31 Introduction to Databases I Overview  Objectives of this lecture  History and Evolution of Databases  Basic Terms in Database and definitions.
Chapter 11 Data Management Layer Design
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Copyright © 2004, Dr. Guimaraes OODBMS & ORDBMS Class Will Start Momentarily… Dr. Mario Guimaraes.
Fundamentals, Design, and Implementation, 9/e Chapter 16 Object-Oriented Database Processing.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 18 Object Database Management Systems.
Object-Oriented Methods: Database Technology An 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 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
Database Management COP4540, SCS, FIU An Introduction to database system.
EER vs. UML Terminology EER Diagram Entity Type Entity Attribute
IST Databases and DBMSs Todd S. Bacastow January 2005.
Object-Relational DBMSs By Yao-Wen Tu CS157b12/09/2003 Prof. Sin-Min Lee.
10. Creating and Maintaining Geographic Databases.
Object and object-relational databases 1. Object databases vs. Object-relational databases Object databases Stores complex objects – Data + functions.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Chapter 24 Introduction to Object DBMSs Prepared by Kai Huang CS157B Prof Sin-Min Lee.
CSC2012 Database Technology & CSC2513 Database Systems.
2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the differences and similarities between relational and object-oriented.
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.
CS370 Spring 2007 CS 370 Database Systems Lecture 2 Overview of Database Systems.
Faculty of ACES © Sheffield Hallam University “ The columns in the tables cover a year at ten day intervals. The decans are placed in the order in which.
Data Access Patterns Some of the problems with data access from OO programs: 1.Data source and OO program use different data modelling concepts 2.Decoupling.
1 CS 430 Database Theory Winter 2005 Lecture 1: Introduction.
Database System Concepts and Architecture
Introduction to Database Systems Fundamental Concepts Irvanizam Zamanhuri, M.Sc Computer Science Study Program Syiah Kuala University Website:
You know my method, Watson. Apply them. SEMINAR BỘ MÔN: CƠ SỞ DỮ LIỆU NÂNG CAO.
1 Object Databases: Introduction. 2 Why OO? v Relational Systems are limited: –Structural restrictions on data –Missing semantics (value-based relationships)
Dr. Mohamed Osman Hegazi 1 Database Systems Concepts Database Systems Concepts Course Outlines: Introduction to Databases and DBMS. Database System Concepts.
Lecture2: Database Environment Prepared by L. Nouf Almujally & Aisha AlArfaj 1 Ref. Chapter2 College of Computer and Information Sciences - Information.
Object Persistence Design Chapter 13. Key Definitions Object persistence involves the selection of a storage format and optimization for performance.
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.
Lecture2: Database Environment Prepared by L. Nouf Almujally 1 Ref. Chapter2 Lecture2.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
1 CS 430 Database Theory Winter 2005 Lecture 2: General Concepts.
 To develop the knowledge and skills to manage and tune database management systems  To provide experience the technologies of a variety of database.
FEN NOEA/IT - Databases/ODB1 ODB – Object DataBases Object-Oriented – Fundamental Concepts UML and EE/R OO and Relational Databases Introduction.
1 CS457 Object-Oriented Databases Chapters as reference.
Creating and Maintaining Geographic Databases. Outline Definitions Characteristics of DBMS Types of database Relational model SQL Spatial databases.
OODBMS: Introduction and Logical Database Design
1 CS 430 Database Theory Winter 2005 Lecture 14: Additional SQL Topics.
Intro to GIS | Summer 2012 Attribute Tables – Part 1.
Session 1 Module 1: Introduction to Data Integrity
Object Relational and Extended Relational Database Systems
Copyright (c) 2014 Pearson Education, Inc. Introduction to DBMS.
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,
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.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
Faeez, Franz & Syamim.   Database – collection of persistent data  Database Management System (DBMS) – software system that supports creation, population,
OODBMS and ORDBMS. Background Object-oriented software, based on the principles of user-defined datatypes, along with inheritance and polymorphism, is.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
Relational vs. Object Oriented Database Management System Syazwani Nur Dayana Nur Fatin Syafiqa M3cs2305B.
Databases and DBMSs Todd S. Bacastow January
Geographic Information Systems
Object-Oriented Databases
Presentation transcript:

1 CS 430 Database Theory Winter 2005 Lecture 17: Objects, XML, and DBMSs

2 Topics Object-Oriented DBMS (ODBMS) Object-Relational DBMS (ORDBMS) XML and Databases

3 Object-Oriented DBMS Motivation: Deal with shortcomings of traditional RDBMS for applications with complex data. E.g.:  CAD (Computer Aided Design)  Experiment Data  GIS (Geographic Information System)  Multi-Media

4 Object-Oriented DBMS Additional Motivation: Tight Integration with O-O Programming Languages  Avoid the “Impedance Mismatch”  Example: Write a C++ program. Fetch and Update data in DBMS in response to program actions on corresponding objects in memory “Swizzling” pointers: Map between pointers in memory and pointers in database

5 ODBMS Features Object Identifiers (OIDs)  Provide globally unique identifiers, immutable across all objects Class Inheritance Object operations or methods Direct representation of relations and collections  Include specific collection types Versioning in the database  E.g. versions of parts of a design

6 ODBMS Standards Object Data Management Group (ODMG) standard Includes:  Object Definition Language (ODL)  Object Query Language (OQL)  C++ Language Binding

7 ODBMS Issues Ad Hoc Query  May have to write program to navigate database to find desired data  Does encapsulation block ad hoc operation? Views? Integrity  Generally enforced by methods that update the database  No declarative description of integrity constraints

8 ODBMS Summary “The Object-Oriented Database System Manifesto”  “This paper attempts to define an object-oriented database system. It describes the main features and characteristics that a system must have to qualify as an object-oriented database system.”  2.cs.cmu.edu/People/clamen/OODBMS/Manifesto /htManifesto/Manifesto.html

9 ODBMS Summary (continued) ODBMS is good for providing persistent storage for an individual application ODBMSs have lost battle for shared data storage  Textbook: Last ODBMS reference is 1997, most are (Textbook copyright is 2004). If necessary, mapping ER Model to ODBMS Model is straight forward

10 Object/Relational DBMS (ORDBMS) Michael Stonebreaker: Taxonomy of DBMSs RDBMSORDBMS File System ODBMS Query Complex Simple Data Complex Simple

11 Object/Relational Concept Provide alternative to ODBMS for complex data  Extend RDBMS approach “Third Generation Database Manifesto”  Written in response to OODB Manifesto 

12 SQL-99 Support for ORDBMS Row Types, Array Types Object Identity Mechanisms  Includes a REF (Reference) Type Inheritance (Sub/Super Tables) Methods and Encapsulation Application Packages  Standardized packages of extensions for new kinds of data  SQL/MM (Multi-Media)

13 Some Implementations Informix Universal Server  Extension of Stonebreaker’s Postgres work at U.C. Berkeley  Uses “Data Blades” to support complex data types Oracle Data Cartridges IBM Relational Extenders All provide add-in extensions to base RDBMS capabilities

14 Extension Implementation Add new operations and/or syntax to Query Language  Integration with Query Language Parser Integrate into Query Optimizer  Rewrite rules: E.g. NOT( X 20)  Provide necessary costing formulas Specialized storage and index structures  E.g. Quad-Trees for 2d data

15 Extension Issues Mechanisms for linking extensions into base DBMS  Java Virtual Machine “Sandbox” is attractive Where are methods executed in a client/server environment  Server: Uses shared resource  Client: May require extra data movement External functions (called from Queries) executing queries in database

16 Chris Date’s “Two Great Blunders” An Alternative View on ORDBMS Blunder One: Rows are not Objects  However, Values are Objects (Domains are Classes) Blunder Two: Mixing pointers (e.g. References) and Relations However, this is a criticism of the direction of SQL-99 extensions to RDBMS  Not a call for ODBMS or something else

17 Object-Relational Summary This appears to be the future direction for the DBMS community SQL-99 adopted many of these concepts  Next version will continue to grow these concepts Not clear (at least to me) exactly how the Microsoft NewFS will relate to these concepts

18 XML and Database XML is coming to dominate worlds of data exchange and document formatting How do you integrate XML in to your data bases?

19 DB Relevant XML Standards XML Schema  Provide better description of XML documents than basic XML DTDs XPath  Standard way to describe nodes in XML documents XQuery  Standard Query Language for XML documents

20 Three Approaches to Putting XML into a Database One: Store XML document as a text BLOB Two: “XML Column”  Provide an XML object class for database values An ORDBMS extension  Good for storing complete already existing documents  Good for archives (e.g. legal record)  Problematic when operating on or updating parts of documents (as opposed to whole document)

21 Three Approaches to Putting XML into a Database Three: “Shred and Publish” or “XML Collection”  Shred XML document content into a standard Relational Database  Publish query results as XML documents  Only works when Documents conform strictly to DTDs or Schemas There is no requirement to keep original document intact (e.g. store tags)  Good when parts of document are queried and updated  Issue: Mapping of Relations in database (a network) in XML tag structure (a hierarchy)