Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control.

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

Chapter 7 System Models.
Relational Database and Data Modeling
Relational data objects 1 Lecture 6. Relational data objects 2 Answer to last lectures activity.
Limitations of the relational model 1. 2 Overview application areas for which the relational model is inadequate - reasons drawbacks of relational DBMSs.
Relational data integrity
1 Term 2, 2004, Lecture 9, Distributed DatabasesMarian Ursu, Department of Computing, Goldsmiths College Distributed databases 3.
Database Design: ER Modelling (Continued)
Database Systems: Design, Implementation, and Management
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design 1.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide
Chapter 18 Methodology – Monitoring and Tuning the Operational System Transparencies © Pearson Education Limited 1995, 2005.
OO databases 1 Object Oriented databases. OO databases 2 Developing OODBMS - motivation motivation more and more application areas require systems that.
Megastore: Providing Scalable, Highly Available Storage for Interactive Services. Presented by: Hanan Hamdan Supervised by: Dr. Amer Badarneh 1.
Chapter 10: Designing Databases
Jane Reid, BSc/IT DB, QMUL, 25/2/02 1 Object-oriented DBMS Background to ODBMS ODBMS requirements Object components ODB conceptual design –Graphical ODB.
the Entity-Relationship (ER) Model
Relational Database Design Via ER Modelling
Database System Concepts and Architecture
Lecture plan Outline of DB design process Entity-relationship model
OBJECT-ORIENTEDNESS. What is Object-Orientedness? model system as a collection of interacting objects O-O Modelling  O-O Programming ► similar conceptual.
Executional Architecture
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques
Chapter 12: Designing Databases
Distributed DBMS©M. T. Özsu & P. Valduriez Ch.14/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control.
Distributed DBMS© M. T. Özsu & P. Valduriez Ch.6/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control.
ISOM Distributed Databases Arijit Sengupta. ISOM Learning Objectives Understand the concept and necessity of distributed databases Understand the types.
Distributed DBMSPage © 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture Distributed Database.
Object Databases Baochuan Lu. outline Concepts for Object Databases Object Database Standards, Languages, and Design Object-Relational and Extended-Relational.
Transaction.
Chapter 13 (Web): Distributed Databases
Xyleme A Dynamic Warehouse for XML Data of the Web.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3 The Basic (Flat) Relational Model.
©Silberschatz, Korth and Sudarshan8.1Database System Concepts Chapter 8: Object-Oriented Databases Need for Complex Data Types The Object-Oriented Data.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
ABCSG - Distributed Database 1 Data Management Distributed Database Data Replication.
Distributed DBMSPage 5. 1 © 1998 M. Tamer Özsu & Patrick Valduriez Outline Introduction Background Distributed DBMS Architecture  Distributed Database.
Chapter 11 Data Management Layer Design
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
Working with SQL and PL/SQL/ Session 1 / 1 of 27 SQL Server Architecture.
Chapter 14 & 15 Conceptual & Logical Database Design Methodology
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
CSCI 3140 Module 2 – Conceptual Database Design Theodore Chiasson Dalhousie University.
Session-9 Data Management for Decision Support
Next-generation databases Active databases: when a particular event occurs and given conditions are satisfied then some actions are executed. An active.
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
Chapter 38 Persistence Framework with Patterns 1CS6359 Fall 2011 John Cole.
Prepared By Prepared By : VINAY ALEXANDER ( विनय अलेक्सजेंड़र ) PGT(CS),KV JHAGRAKHAND.
DDBMS Distributed Database Management Systems Fragmentation
Databases Illuminated
PMIT-6101 Advanced Database Systems By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Chapter 2 Database System Concepts and Architecture Dr. Bernard Chen Ph.D. University of Central Arkansas.
1 CS457 Object-Oriented Databases Chapters as reference.
Object Oriented Database By Ashish Kaul References from Professor Lee’s presentations and the Web.
CSE314 Database Systems Lecture 3 The Relational Data Model and Relational Database Constraints Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson.
Object-Oriented Programming Chapter Chapter
Topic Distributed DBMS Database Management Systems Fall 2012 Presented by: Osama Ben Omran.
Exam 1 Review Dr. Bernard Chen Ph.D. University of Central Arkansas.
CMSC 345 Fall 2000 OO Design. Characteristics of OOD Objects are abstractions of real-world or system entities and manage themselves Objects are independent.
Chapter 18 Object Database Management Systems. Outline Motivation for object database management Object-oriented principles Architectures for object database.
ITEC0724 Modern Related Technology on Mobile Devices Lecture Notes #2 1.
1 Information Retrieval and Use De-normalisation and Distributed database systems Geoff Leese September 2008, revised October 2009.
1 10 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 10 Designing Databases.
Completeness Criteria for Object- Relational Database Systems by Won Kim April 2002 Sang Ho Lee School of Computing, Soongsil University
1 Chapter 22 Distributed DBMSs - Concepts and Design Simplified Transparencies © Pearson Education Limited 1995, 2005.
Chapter 2 Database System Concepts and Architecture
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.
Presentation transcript:

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/1 Outline Introduction Background Distributed Database Design Database Integration Semantic Data Control Distributed Query Processing Multimedia Query Processing Distributed Transaction Management Data Replication Parallel Database Systems Distributed Object DBMS ➡ Object Models ➡ Object Distribution Peer-to-Peer Data Management Web Data Management Current Issues

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/2 Why Object DBMS Some applications require storage and management of abstract data types (e.g., images, design documents)  rich type system supporting user-defined abstract types; need to explicitly represent composite and complex objects without mapping to flat relational model; need more powerful languages without the impedance mismatch.

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/3 Fundamental Concepts Object ➡ An entity in the system that is being modeled. ➡ OID: object identifier ➡ Immutable State ➡ Atomic or constructed value ➡ Atomic values are instance variables (or attributes) ➡ Constructed values can be set or tuple Interface ➡ State and behaviour ➡ Behavior captured by methods Object states may change, but OID remains identical

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/4 Fundamental Concepts (cont’d) Type ➡ Domain of objects Class ➡ Template for a group of objects defining a common type that conforms to the template Example type Car attributes engine: Engine bumbers: {Bumper} tires: [lf: Tire, rf: Tire, lr: Tire, rr: Tire] make: Manufacturer model: String year: Date serial_no: String capacity: Integer methods age: Real replaceTire(place, tire)

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/5 Fundamental Concepts (cont’d) Composition (aggregation) ➡ Composite type ( Car ) and composite object ➡ Allows referential sharing – objects refer to each other by their OIDs as values of object-based variables ➡ Composition relationships can be represented by composition (aggregation) graph Subclassing and inheritance ➡ Subclassing is based on specialization: class A is a specialization of class B if A’s interface is a superset of B’s interface. ➡ Inheritance: result of subclassing – class A’s properties consist of what is defined for it as well as the properties of class B that it inherits

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/6 Object Distribution New problems due to encapsulation of methods together with object state. Fragmentation can be based on ➡ State ➡ Method definitions ➡ Method implementation Class extent can be fragmented

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/7 Fragmentation Alternatives Horizontal ➡ Primary ➡ Derived ➡ Associated Vertical Hybrid Path partitioning

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/8 Horizontal Fragmentation Primary ➡ Defined similar to the relational case Derived ➡ Due to the fragmentation of a subclass ➡ Due to fragmentation of a complex attribute ➡ Due to method invocation

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/9 Vertical Fragmentation For a class C, fragmenting it vertically into C 1, …, C m produces a number of classes, each of which contains some of the attributes and some of the methods. ➡ Each fragment is less defined than the original class Issues ➡ Subtyping relationship between C ’s superclasses and subclasses and the fragment classes ➡ Relationship of the fragment classes among themselves ➡ Location of the methods when they are not simple methods

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/10 Path Partitioning Clustering all of the objects forming a composite object into a partition Can be represented as a hierarchy of nodes forming a structural index ➡ Each node of the index points to objects of the domain class of the component object

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/11 Object Server Architecture Clients request “objects” from the server ➡ Single object or groups of objects can be returned Server undertakes most of the DBMS services Object manager duplicated ➡ Provides a context for method execution ➡ Implementation of object identifier ➡ Object clustering and access methods (at server) ➡ Implement an object cache

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/12 Page Server Architecture Unit of transfer between clients and server is a physical unit of data ➡ E.g., page or segment DBMS services split between the client and the server Servers typically do not have the notion of “object” Clients have to do the conversion from an “object” to a physical unit and vice versa

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/13 Cache Consistency Avoidance-based ➡ Prevents access to stale cache data by ensuring that clients cannot update an object if it is being read by other clients ✦ Object in cache is stale if it has already been updated and committed to the database by a different client ➡ Stale data cannot exist in the cache Detection-based ➡ Detect stale object access at a validation step at commit time ➡ Stale data is allowed to exist in the cache Each can further classified based on when the client informs the server about writes ➡ Synchronous ➡ Asynchronous ➡ Deferred

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/14 Alternative Cache Consistency Algorithms Avoidance-based synchronous Avoidance-based asynchronous Avoidance-based deferred Detection-based synchronous Detection-based asynchronous Detection-based deferred

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/15 Object Identifier Management Physical object identifier (POID) ➡ OID is equated with the physical address of the corresponding object ➡ Address can be disk page address and an offset from the base address + Object can be obtained directly from the OID - Parent object and all indexes need to be updated when object moves Logical identifier (LOID) ➡ System-wide unique ➡ A mapping has to occur to map it to the physical address + Object can be easily moved - Indirection overhead

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/16 Object Migration Unit of migration ➡ Object state but not methods ✦ Requires invocation of remote procedures ➡ Individual objects ✦ Types may be accessed remotely or duplicated Tracking objects ➡ Surrogates or proxy objects ➡ Placeholders: accesses to proxy objects are directed transparently by the system to the objects themselves at the new sites

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/17 Distributed Object Storage Object clustering ➡ Decomposition storage model ✦ Partition eachobject class into binary relations (OID, attribute) ✦ Relies on LOID ➡ Normalized storage model ✦ Stores each class as a separate relation ✦ Can use LOID or POID ➡ Direct storage model ✦ Multi-class clustering og objects based on the composition relationship Distributed garbage collection ➡ Reference counting ➡ Tracing-based ✦ Mark and sweep ✦ Copy-based

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/18 Object Query Processing Similar approach to relational can be followed. Additional difficulties ➡ Complexity of the type system ➡ Encapsulation makes knowledge of physical organization and access methods difficult ➡ Object structures are complex requiring path expressions for access

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/19 Transaction Management Difficulties resulting from the following requiremens ➡ Operations are not simple Read and Write ➡ Objects are not “flat” but complex and composite ➡ Access patterns are not simple ➡ Long running activities need to be supported ➡ Active object capabilities are sometimes required

Distributed DBMS©M. T. Özsu & P. Valduriez Ch.15/20 Correctness Criteria Commutativity Invalidation Recoverability