Schema and Database Evolution in Object. Database Systems. Project Progress Report. Parag Mahalley. Jayesh Govindrajan. Swathi Subramanium
|
|
- Ronald Little
- 5 years ago
- Views:
Transcription
1 Schema and Database Evolution in Object Database Systems Project Progress Report By Parag Mahalley Jayesh Govindrajan Swathi Subramanium Anuja Gokhale Advisor: Elke A.Rundensteiner CS Database Management Systems November 1, 1997 Abstract In most database applications schema changes are seen frequently. After every schema change in a database, it is very important that the database be changed such that the schema and the database stay consistent with each other. Our project covers the implementation of the immediate and deferred approach to database evolution. We describe the overall design that we shall use for this implementation. We also present our proposal on developing a cost model for measuring performance of Immediate and Deferred. This model would be used to obtain a hybrid strategy intermixing the deferred and the immediate technique.
2 1 Introduction In most database applications schema changes are seen frequently. After every schema change in a database, it is very important that the database be updated such that the schema and the database stay consistent with each other. Our project covers the implementation of the immediate and deferred approach to database evolution. We consider only the basic schema update primitives. To achieve this consistency, there are two strategies for database evolution, viz Immediate transformation and Deferred transformation. The rst phase of our project deals with deferred and immediate transformation techniques in the O2 object database system. We consider the implementation of the following schema manipulation primitives using both techniques : Addition of an atomic attribute Modication of an atomic attribute Deletion of an atomic attribute Deletion of a class Renaming of a class Addition of an edge between two classes Deletion of an edge between two classes In the second phase, we hope to come up with a mechanism which intermixes the deferred and immediate techniques, thus incorporating the advantages of each. This involves nding a criteria on which the DBMS automatically switches from one mode of transformation to another. We have identied two such criteria, number of users and number of schema evolutions on a class. To evaluate the performance, we plan to consider response time as a benchmark. 1.1 Database Transformation When a schema is changed by an user, it implies changing the database. The changes to the schema have to be propagated to all objects composing the database. This is referred as Database Transformation Immediate Database Transformation The system executes conversion functions on all objects of the modied classes as soon as the modication on the schema is committed. The main problems with this approach are: All running programs have to be suspended until the updation is completed. This waiting time depends on several parameters (size of the database, type of update performed, object retrieving strategy etc). All objects of the modied class have to be updated at once. This could be expensive, especially if the system does not manage class extensions Deferred Database Transformation In this case the objects are updated to conform logically to the new schema after the change to the schema has been committed. However, objects are physically restructured only when they are accessed by an application. The schema may undergo several changes before an object is eectively used. Thus, only those objects that are used are transformed, and not all objects of the modied classes as in the case of immediate updates. The main problems with this approach are: There is a need to store and remember the history of all schema updates that have been performed in the system. Every time an object is accessed by an application, the history should be checked and updated accordingly. The rest of the report is structured as follows: Section 2 covers problem description. In Section 3, we review relevant the related work. The project goals and details are stated in Section 4. Implementation details are included in this section. The work distribution for the above implementation has been split over a six week period. This schedule has been listed in Section 6. Finally we conclude in Section 7. 1
3 2 Problem Description When there is a schema change in a database, the database needs to be updated such that it reects the corresponding change and maintains data consistency. There are two strategies involved in updating the database The Immediate Approach The Deferred Approach. The Immediate Approach is where objects in the database are updated in any case as soon as the schema modication is performed. This Approach leads to a signicant problem as the database needs to be locked for updation after every schema change. Thus denying access to all other users in the system. On the other hand, the deferred approach updates objects only when they are accessed/used. This circumvents the problem faced by the Immediate approach. The decision to use either one of the approaches depends on the number of schema changes among other factors. We therefore need to implement both the above strategies for schema evolution and to develop a cost model which models the performance of both under varying number of schema changes and to come up with a hybrid strategy to eectively intermix the two for optimum results. 3 Related Work Not all available ODBSs provide the feature of adapting the database after a schema modication has been performed [7] [8]. For those that do it, they dier from each other in the approach followed for updating the objects. Some commercial systems support the possibility to dene object versions to evolve the database from one version to another, examples are Objectivity [6] and Gemstone [3]. Objectivity does not provide any tool to automatically update the database besides providing object versions. Gemstone provides a exible way for updating object instances using default transformation of objects, along with the possibility to add conversion methods to a class. In both these systems versioning is used. One the other hand majority of the existing commercial systems do not use versioning for updating the database. Instances of a class, in this case are converted either immediately or lazily. Objectstore [5] makes use of immediate database transformation. Deferred transformation of objects is provided in systems like Itasca [4] and Versant [9]. Both these systems do not provide the user with exible conversion functions like the one presented in O2 [1]. O2 object database system oers an automatic database modication mechanism after a schema change. It supports both immediate and deferred database transformations. The performance of immediate vs. deferred database updates is discussed by Fabrizio Ferrandina et al [2]. The performance was evaluated for both large and small databases. For small databases it was shows that the costs for the immediate database transformation grows linearly with the number of schema modications. Except for one schema modication, the deferred technique always performs better than the immediate. In large databases, deferred transformation performs better than immediate, when the number of schema updates exceeds a particular threshold (5 in their case). 4 Project Goals We set the following goals for our project. Implementation of Deferred Approach This involves updation of objects in the database as and when they are accessed. It is implemented using the Classes we have identied in the latter part of the report. Implementation of Immediate Approach This involves a one-time updation of all objects in the database as a result of a schema change. This technique does not involve any of the deferred overheads. Comparison of Costs in Immediate and Deferred Approaches The cost is calculated on the basis of the response time of the database to the queries,in case of deferred and on the basis of average time to update an object in case of immediate. The time needed for transforming an object using immediate and deferred would depend on the number of schema evolutions performed. The cost model tries to nd a relation between this time and the number of schema evolution. This would involve 2
4 running experiments for immediate and deferred strategy on a set of objects and coming up with average time taken. Integrate the Immediate and Deferred approaches into an optimal strategy for database evolution Using the cost model our objective is to come up with a strategy for database update which intermixes both the immediate and deferred strategy in a single hybrid framework. We believe that there exists a certain threshold above which the immediate strategy outperforms deferred in terms of time taken to update an object.our aim is to nd this threshold and using this threshold obtain the hybrid strategy which would perform optimally for any number of schema evolutions. 5 Project Details 5.1 Implementation Details Our design ignores the following: Property Dependencies Cycles caused from adding edges between dierent classes Multiple Inheritance. Hence for every class there is only one parent class. We have a Class Lookup Table that stores the class names and their corresponding class IDs. We use this table to locate the class ID from its class name. Following is a list of basic primitives: Attributes add atomic attribute (attribute name : string, class name : string, attribute type:(integer, real, string), default initial value:(integer, real, string)) Input: Takes in the attribute name, the class name it needs to add the attribute to, the type of this attribute and the default value it needs to be set to. Description: This method adds the given attribute name to the given class name and also assigns it the default initial value. The given class name is mapped to its corresponding class ID in the Class Lookup Table. On locating this classid it adds the given attribute to it. modify atomic attribute (attribute name : string, class name : string, new attribute type:(integer, real, string) Input: Takes in the attribute name, the class name it belongs to and the new attribute type that it needs to be changed to. Description: This method modies the type of the given attribute in the given class. The given class name is mapped to its corresponding class ID in the Class Lookup Table. On locating this class ID it modies the type of the given attribute. delete attribute (attribute name : string, class name : string) Input: Takes in the attribute name to be deleted and the class name it belongs to. Description: This method deletes the given attribute from the give class. The given class name is mapped to its corresponding class ID in the Class Lookup Table. On locating this class ID it deletes the given attribute from it. Class delete class (class name : string) Input: Takes in the name of the class that needs to be deleted. Description: This method deletes the given class from the structure. The given class name is mapped to its corresponding class ID in the Class Lookup Table. On locating this class ID it deletes this class from the structure. If this class is not a leaf and has hierarchies below it, then its immediate children are linked to its parent. The parent class now holds these additional children class Id's' in its children list and removes the 3
5 class ID of the deleted class from its children list/attribute list. This class deletion could cause loss of inherited properties in the children classes of this deleted class. However, we do not consider property dependency and hence tend to ignore this aw. The class ID of the deleted class is also removed from the main class of classes. The Class Lookup Table no longer holds this class name or class ID. rename class (old class name : string, new class name : string) Input: Takes in the old class name and the new class name it needs to be changed to. Description: This method renames the given class name to the new class name. The given class name is mapped to its corresponding class ID in the Class Lookup Table. On locating this class ID it changes the current class name to the new given class name. add ISA edge (super class, sub class) Input: Takes in the parent class name (super class) and the child class name (sub class) to add the edge between the two. Description: This method adds an inheritance edge(link) between two classes. The given classes are mapped to their corresponding class Id's' in the Class Lookup Table. On locating their class Id's' we add the inheritance link between the two classes. The super class(parent) now holds the class ID of the sub class(child) in its children list, and the sub class(child) now holds the super class(parent) ID in its parent ID eld. Though we do not allow multiple inheritance, we do not check for them while adding this edge. We assume that the user is smart and knows where he/she is adding an edge. We also ignore cycles. delete ISA edge (super class : string, sub class : string) Input: Takes in the super class name(parent) and the sub class name (child) to delete an edge between the two. Description: This method deletes an inheritance edge(link) between two classes. The given classes are mapped to their corresponding class Id's' in the Class Look up Table. On locating their class Id's' we delete the inheritance link between the two classes. It removes the class ID of the sub class (child) from the children list of the super class (parent) and the class ID of the super class (parent) from the parent eld of the sub class (child). It then moves the sub class(child) and links it to the class of classes (root). It adds the class ID of the sub class to the list of class IDs' in the class of classes(root).it also adds this sub class name and its ID in the Class Lookup Table. Due to deletion of the link between the sub class and the super class the properties that are inherited by the sub class from the super class are lost. But since we do not consider property dependencies we can ignore this aw. set mode (mode : string) Input : Takes in the mode of schema update. Description : The database transformation technique can be switched between deferred and immediate depending upon the value of mode parameter. If the mode is changed from deferred to immediate, all the schema updates need to be incorporated. This is done using the history list. On the other hand, no changes are required when the mode is changed from immediate to deferred. History The history stores information about the earlier schema modications. The history list entries can be updated by using the following methods. add history entry (state : integer) Input: Takes in the current state to add an entry in the history list. Description : It creates an instance of the history class to reect the schema change. delete history entry ( state : integer) Input: Takes in the class name whose history classes need to be deleted. Description: It deletes instances of the history class depending of the schema state of the particular instance and the state of class accessed. 4
6 Class Schema name : string ; class_list : list < class_id : integer > ; delete_class ( class_name : string ) name : string ; class_id : integer ; parent_id : integer; children_list : list < class_id : integer > ; attribute_list : list < class_id : integer > ; visibility : { public, private } ; state : integer ; mode : {deferred, immediate } ; history_list : list < class_id : integer > ; rename_class ( old_class_name : string, new_class_name : string ) add_isa_edge ( superclass : string, subclass : string ) History sch_state : integer ; property_list : list < meta_property_entry > ; function : string ; add_property_entry ( pid : integer, sch_state : integer ) delete_property_entry ( pid : integer, sch_state : integer ) delete_isa_edge ( superclass : string, subclass : string ) delete_attribute ( attribute_name : string, class_name : string ) add_atomic_attribute ( attribute_name : string, class name : string, attribute_type : { integer, real, string }, default_initial_value : { integer, real, string } ) set_mode ( mode : string ) add_history_entry ( state : integer ) delete_history_entry ( state : integer ) Meta_property_entry pid : integer ; sch_state : integer ; offset : integer ; Attribute name : string ; attribute_id : integer ; class_id : integer ; type : { integer, real, string } ; modify_atomic_attribute ( attribute_name : string, class_name : string, new_type : {integer, real, string} ) cls : class_id tid : integer... value object header value Structure of an object Figure 1: Class Primitives Figure 1 shows the denitions for the various classes used in the design. The Schema class is the description of the base schema, which is an aggregation of various classes. Each of the classes have several attributes, and a history list. The history list stores information about the earlier schema modications. 5.2 Stepwise Implementation of the Database Transformation When a class is created it is given a default mode (deferred or immediate). The mode of a class can be changed by using the set mode primitive. A schema change is made using the add atomic attribute primitive. Here an attribute "ssn#" is added to a "Person" class. Depending upon the class mode, deferred or immediate updation is performed. Let's assume that the default mode is immediate. In such a case "ssn#" is added to each instance of the "Person" class and thus the database is updated. If the default mode needs to be changed to deferred we use the set mode primitive. Before performing the immediate updation, the database is locked for all other transactions. If the mode of the class is deferred, history is maintained. 6 Schedule We have devised the following schedule for future work towards the project: NOV { Week 1 Design of basic Primitives Design history structures { Week 2, 3 Create underlying schema Design history structures Implement Primitives for Immediate Approach 5
7 DEC { Week 4 Implement Deferred Strategy { Week 1 Design and implement Interface Devise Cost Model { Week 2 Integration of all modules Project Report The Work Distribution for the team is underlined below: Anuja Swathi { Schema class delete class { Class class rename class { Class class add atomic attribute delete attribute Jayesh and Parag { Class class modify atomic attribute add ISA edge del ISA edge All together Implement history structures. add history entry delete history entry set mode 7 Conclusion There exist various approaches to solving the schema evolution problem that exists in Object Database Systems. We have considered two of these methods, identied above in the report,namely deferred an immediate. As a part of our project we shall be implementing the 7 schema evolution primitives discussed above. Having implemented the primitives we plan to focus on developing a cost model for evaluating the performance of immediate and deferred strategies for updating updating the database. Using the cost model our objective is to come up with a strategy for database update which intermixes both the immediate and deferred strategy in a single hybrid framework. References [1] Fabrizo Farradina, Guy Ferran, Thorsten Meyers, Joelle Madec, Roberto Zicari Schema and Database Evolution in O2 object database system Proceedings of the 21st VLDB Conference, Zurich, Switzerland, 1995 [2] Fabrizo Farradina, Thorsten Meyer, Roberto Zicari Schema Evolution in Object Databases: Measuring the Performance of Immediate and Deferred updates. OOPSLA Workshop on Object Database behavior, Benchmarks and Performance,Austin, Texas, 1995 [3] R. Bretl, D. Maier, A. Otis, J. Penney, B. Schuchardt, J. Stein, E.H.Williams. The Gemstone Data Management System. W. Kim and F.H.Lockovsky, editors, Object Oriented Concepts, Databases and Applications, chapter 12. ACM Press,
8 [4] Itsaca Systems, Inc. Itasca Systems Technical Report Number TM OODBMS Feature Checklist.Rev 1.1, December 1993 [5] Object Design Inc. Object Store User Guide, Release 3.0, chapter 10, December 1993 [6] Objectivity Inc. Objectivity, User Manual, Version 2.0, March 1993 [7] J.E.Richardson and M.J. Carey Persistence in the E language.: Issues and Implementation Software- Practice and Experience, 19(12):1150, December 1989 [8] B. Schiefer Supporting Integration and Evolution with Object-Oriented Views. FZI-Report 15/93, July 1993 [9] Versant Object Technology Bohannon Drive Menlo Park, CA Versant User Manual,
Implementing Lazy Database Updates for an Object. Database System. Fabrizio Ferrandina Thorsten Meyer Roberto Zicari. J. W. Goethe-Universitat
Implementing Lazy Database Updates for an Object Database System Fabrizio Ferrandina Thorsten Meyer Roberto Zicari J. W. Goethe-Universitat Fachbereich Informatik Robert Mayer Strae {5 D{60054 Frankfurt
More informationCh. 21: Object Oriented Databases
Ch. 21: Object Oriented Databases Learning Goals: * Learn about object data model * Learn about o.o. query languages, transactions Topics: * 21.1 * 21.2 * 21.3 * 21.4 * 21.5 Source: Ch#21, Bertino93, Kim
More informationStep A. Step B. Step C. Step B
OQL SERF: An ODMG Implementation of the -Based Schema Evolution Framework Kajal T. Claypool, Jing Jin, and Elke A. Rundensteiner Department of Computer Science, Database Systems Research Group Worcester
More informationTransparent Access to Legacy Data in Java. Olivier Gruber. IBM Almaden Research Center. San Jose, CA Abstract
Transparent Access to Legacy Data in Java Olivier Gruber IBM Almaden Research Center San Jose, CA 95120 Abstract We propose in this paper an extension to PJava in order to provide a transparent access
More informationname Person Address street address name Person city street
Extending the Object Query Language for Transparent Metadata Access Hong Su, Kajal T. Claypool, and Elke A. Rundensteiner Worcester Polytechnic Institute, 100 Intitute Road, Worcester, MA, USA fsuhong,
More informationPersistent Identifier (PID) Partition. Indirectory free-list. Object Object Object Free space
Towards Scalable and Recoverable Object Evolution for the PJama Persistent Platform M. Dmitriev and C. Hamilton Department of Computing Science, University of Glasgow, Glasgow G12 8RZ, Scotland, UK fmisha,
More informationThe Architecture of a System for the Indexing of Images by. Content
The Architecture of a System for the Indexing of s by Content S. Kostomanolakis, M. Lourakis, C. Chronaki, Y. Kavaklis, and S. C. Orphanoudakis Computer Vision and Robotics Laboratory Institute of Computer
More information(Preliminary Version 2 ) Jai-Hoon Kim Nitin H. Vaidya. Department of Computer Science. Texas A&M University. College Station, TX
Towards an Adaptive Distributed Shared Memory (Preliminary Version ) Jai-Hoon Kim Nitin H. Vaidya Department of Computer Science Texas A&M University College Station, TX 77843-3 E-mail: fjhkim,vaidyag@cs.tamu.edu
More informationOn Object Orientation as a Paradigm for General Purpose. Distributed Operating Systems
On Object Orientation as a Paradigm for General Purpose Distributed Operating Systems Vinny Cahill, Sean Baker, Brendan Tangney, Chris Horn and Neville Harris Distributed Systems Group, Dept. of Computer
More informationPointer to the right sibiling
Back to the Future: Dynamic Hierarchical Clustering Chendong Zou 921 S.W. Washington Ave. Suite 67 Portland, OR9725 email: zou@informix.com Betty Salzberg y College of Computer Science Northeastern University
More informationSAMOS: an Active Object{Oriented Database System. Stella Gatziu, Klaus R. Dittrich. Database Technology Research Group
SAMOS: an Active Object{Oriented Database System Stella Gatziu, Klaus R. Dittrich Database Technology Research Group Institut fur Informatik, Universitat Zurich fgatziu, dittrichg@ifi.unizh.ch to appear
More informationUsing the Holey Brick Tree for Spatial Data. in General Purpose DBMSs. Northeastern University
Using the Holey Brick Tree for Spatial Data in General Purpose DBMSs Georgios Evangelidis Betty Salzberg College of Computer Science Northeastern University Boston, MA 02115-5096 1 Introduction There is
More informationDesign Pattern: Composite
Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation
More informationRekayasa Perangkat Lunak 2 (IN043): Pertemuan 8. Data Management Layer Design
Rekayasa Perangkat Lunak 2 (IN043): Pertemuan 8 Data Management Layer Design Data Management Layer Focus on how to manage data are stored that can be handled by the programs that run the system, including:
More informationA Boolean Expression. Reachability Analysis or Bisimulation. Equation Solver. Boolean. equations.
A Framework for Embedded Real-time System Design? Jin-Young Choi 1, Hee-Hwan Kwak 2, and Insup Lee 2 1 Department of Computer Science and Engineering, Korea Univerity choi@formal.korea.ac.kr 2 Department
More informationArrays Classes & Methods, Inheritance
Course Name: Advanced Java Lecture 4 Topics to be covered Arrays Classes & Methods, Inheritance INTRODUCTION TO ARRAYS The following variable declarations each allocate enough storage to hold one value
More informationProceedings of International Computer Symposium 1994, Dec , NCTU, Hsinchu, Taiwan, R.O.C. 1172
Proceedings of International Computer Symposium 1994, Dec. 12-15, NCTU, Hsinchu, Taiwan, R.O.C. 1172 Short Cuts for Traversals in Object-Oriented Database Systems Wang-Chien Lee and Dik Lun Lee Department
More informationOptimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of C
Optimum Alphabetic Binary Trees T. C. Hu and J. D. Morgenthaler Department of Computer Science and Engineering, School of Engineering, University of California, San Diego CA 92093{0114, USA Abstract. We
More informationAn On-line Variable Length Binary. Institute for Systems Research and. Institute for Advanced Computer Studies. University of Maryland
An On-line Variable Length inary Encoding Tinku Acharya Joseph F. Ja Ja Institute for Systems Research and Institute for Advanced Computer Studies University of Maryland College Park, MD 242 facharya,
More informationOODB. DEFCLASS Person () ((born :accessor born :type integer)...) DEFMETHOD getage ((self person)) (...) )
Toward Painless Polylingual Persistence Alan Kaplan and Jack C. Wileden Department of Computer Science University of Massachusetts Amherst, Massachusetts 01003 USA fkaplan,wiledeng@cs.umass.edu February
More informationAdvanced Database Applications. Object Oriented Database Management Chapter 13 10/29/2016. Object DBMSs
Object Oriented Database Chapter 13 1 Object DBMSs Underlying concepts: Freely sharing data across processing routines creates unacceptable data dependencies All software should be constructed out of standard,
More informationOn the Cost of Lock Inheritance. in Lock Managers Supporting. Nested Transactions. Laurent Daynes, Olivier Gruber and Patrick Valduriez y
On the Cost of Lock Inheritance in Lock Managers Supporting Nested Transactions Laurent Daynes, Olivier Gruber and Patrick Valduriez y Projet Rodin, INRIA Rocquencourt, France Firstname.Lastname@inria.fr
More informationA taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA
A taxonomy of race conditions. D. P. Helmbold, C. E. McDowell UCSC-CRL-94-34 September 28, 1994 Board of Studies in Computer and Information Sciences University of California, Santa Cruz Santa Cruz, CA
More informationIntroduction. A more thorough explanation of the overall topic
4//07. Atomicity & Durability Using Shadow Paging CSEP 545 Transaction Processing for E-Commerce Philip A. Bernstein Copyright 007 Philip A. Bernstein Introduction To get started on the Java-C# project,
More informationAn Object Model for Multiparadigm
1 of 7 03/02/2007 15:37 http://www.dmst.aueb.gr/dds/pubs/conf/1994-oopsla-multipar/html/mlom.html This is an HTML rendering of a working paper draft that led to a publication. The publication should always
More informationSystem Concepts and Architecture. Rose-Hulman Institute of Technology Curt Clifton
System Concepts and Architecture Rose-Hulman Institute of Technology Curt Clifton Data Model A set of concepts to describe Database structure Basic operations on the data Categories of Data Models Conceptual
More informationIntroduction to Database Design. Dr. Kanda Runapongsa Dept of Computer Engineering Khon Kaen University
Introduction to Database Design Dr. Kanda Runapongsa (krunapon@kku.ac.th) Dept of Computer Engineering Khon Kaen University Overview What are the steps in designing a database? Why is the ER model used
More informationRole Modelling: the ASSO Perspective
Role Modelling: the ASSO Perspective Donatella Castelli, Elvira Locuratolo Istituto di Elaborazione dell'informazione Consiglio Nazionale delle Ricerche Via S. Maria, 46 Pisa, Italy e-mail: castelli@iei.pi.cnr.it,
More informationperspective, logic programs do have a notion of control ow, and the in terms of the central control ow the program embodies.
Projections of Logic Programs Using Symbol Mappings Ashish Jain Department of Computer Engineering and Science Case Western Reserve University Cleveland, OH 44106 USA email: jain@ces.cwru.edu Abstract
More informationODBMS: PROTOTYPES & PRODUCTS. The ODBMS Manifesto [M.Atkinson & al 89]
ODBMS: PROTOTYPES & PRODUCTS Systems providing object databases programming languages Prototypes: Encore-Ob/Server (Brown Univ.), IRIS (Hewlett- Packard), EXODUS (Winsconsin Univ.), Zeitgeist (Texas Instrument),
More informationA fully dynamic algorithm for modular decomposition and recognition of cographs
Discrete Applied Mathematics 136 (2004) 329 340 www.elsevier.com/locate/dam A fully dynamic algorithm for modular decomposition and recognition of cographs Ron Shamir a, Roded Sharan b; a School of Computer
More information2 Addressing the Inheritance Anomaly One of the major issues in correctly connecting task communication mechanisms and the object-oriented paradigm is
Extendable, Dispatchable Task Communication Mechanisms Stephen Michell Maurya Software 29 Maurya Court Ottawa Ontario, Canada K1G 5S3 steve@maurya.on.ca Kristina Lundqvist Dept. of Computer Systems Uppsala
More informationAvailability of Coding Based Replication Schemes. Gagan Agrawal. University of Maryland. College Park, MD 20742
Availability of Coding Based Replication Schemes Gagan Agrawal Department of Computer Science University of Maryland College Park, MD 20742 Abstract Data is often replicated in distributed systems to improve
More informationOutline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations
Outline Computer Science 331 Data Structures, Abstract Data Types, and Their Implementations Mike Jacobson 1 Overview 2 ADTs as Interfaces Department of Computer Science University of Calgary Lecture #8
More informationThis is the Pre-Published Version
This is the Pre-Published Version Path Dictionary: A New Approach to Query Processing in Object-Oriented Databases Wang-chien Lee Dept of Computer and Information Science The Ohio State University Columbus,
More informationReverse Engineering with a CASE Tool. Bret Johnson. Research advisors: Spencer Rugaber and Rich LeBlanc. October 6, Abstract
Reverse Engineering with a CASE Tool Bret Johnson Research advisors: Spencer Rugaber and Rich LeBlanc October 6, 994 Abstract We examine using a CASE tool, Interactive Development Environment's Software
More informationKevin Skadron. 18 April Abstract. higher rate of failure requires eective fault-tolerance. Asynchronous consistent checkpointing oers a
Asynchronous Checkpointing for PVM Requires Message-Logging Kevin Skadron 18 April 1994 Abstract Distributed computing using networked workstations oers cost-ecient parallel computing, but the higher rate
More informationRecovering from Main-Memory Lapses. H.V. Jagadish Avi Silberschatz S. Sudarshan. AT&T Bell Labs. 600 Mountain Ave., Murray Hill, NJ 07974
Recovering from Main-Memory Lapses H.V. Jagadish Avi Silberschatz S. Sudarshan AT&T Bell Labs. 600 Mountain Ave., Murray Hill, NJ 07974 fjag,silber,sudarshag@allegra.att.com Abstract Recovery activities,
More informationorg.opj.pjstore class. The string serves as a label of this persistent root. When the program terminates, all persistent objects are saved atomically
The First Experience of Class Evolution Support in PJama Misha Dmitriev misha@dcs.gla.ac.uk Department of Computing Science University of Glasgow Glasgow G12 8RZ Scotland, UK July 1998 Abstract The design
More informationAnnouncements. Reading Material. Recap. Today 9/17/17. Storage (contd. from Lecture 6)
CompSci 16 Intensive Computing Systems Lecture 7 Storage and Index Instructor: Sudeepa Roy Announcements HW1 deadline this week: Due on 09/21 (Thurs), 11: pm, no late days Project proposal deadline: Preliminary
More informationA Meta-Model for Composition Techniques in Object-Oriented Software Development
A Meta-Model for Composition Techniques in Object-Oriented Software Development Bedir Tekinerdogan Department of Computer Science University of Twente P.O. Box 217, 7500 AE Enschede, The Netherlands E-Mail:
More informationMore On inheritance. What you can do in subclass regarding methods:
More On inheritance What you can do in subclass regarding methods: The inherited methods can be used directly as they are. You can write a new static method in the subclass that has the same signature
More informationPhysical Level of Databases: B+-Trees
Physical Level of Databases: B+-Trees Adnan YAZICI Computer Engineering Department METU (Fall 2005) 1 B + -Tree Index Files l Disadvantage of indexed-sequential files: performance degrades as file grows,
More informationChapter 11: Data Management Layer Design
Systems Analysis and Design With UML 2.0 An Object-Oriented Oriented Approach, Second Edition Chapter 11: Data Management Layer Design Alan Dennis, Barbara Wixom, and David Tegarden 2005 John Wiley & Sons,
More informationAbstract Relaxed balancing of search trees was introduced with the aim of speeding up the updates and allowing a high degree of concurrency. In a rela
Chromatic Search Trees Revisited Institut fur Informatik Report 9 Sabine Hanke Institut fur Informatik, Universitat Freiburg Am Flughafen 7, 79 Freiburg, Germany Email: hanke@informatik.uni-freiburg.de.
More informationCopyright Idea Group Inc. Copyright Idea Group Inc.
IDEA GROUP PUBLISHING 701 E. Chocolate Avenue, Hershey PA 17033-1117, USA Tel: 717/533-8845; Fax 717/533-8661; URL-http://www.idea-group.com Rich Base Schema (RiBS) 1 : A Unified Framework for OODB Schema
More informationMemory hierarchy. 1. Module structure. 2. Basic cache memory. J. Daniel García Sánchez (coordinator) David Expósito Singh Javier García Blas
Memory hierarchy J. Daniel García Sánchez (coordinator) David Expósito Singh Javier García Blas Computer Architecture ARCOS Group Computer Science and Engineering Department University Carlos III of Madrid
More information160 M. Nadjarbashi, S.M. Fakhraie and A. Kaviani Figure 2. LUTB structure. each block-level track can be arbitrarily connected to each of 16 4-LUT inp
Scientia Iranica, Vol. 11, No. 3, pp 159{164 c Sharif University of Technology, July 2004 On Routing Architecture for Hybrid FPGA M. Nadjarbashi, S.M. Fakhraie 1 and A. Kaviani 2 In this paper, the routing
More informationConceptual Design with ER Model
Conceptual Design with ER Model Lecture #2 1/24/2012 Jeff Ballard CS564, Spring 2014, Database Management Systems 1 See the Moodle page Due February 7 Groups of 2-3 people Pick a team name Homework 1 is
More informationRichard E. Korf. June 27, Abstract. divide them into two subsets, so that the sum of the numbers in
A Complete Anytime Algorithm for Number Partitioning Richard E. Korf Computer Science Department University of California, Los Angeles Los Angeles, Ca. 90095 korf@cs.ucla.edu June 27, 1997 Abstract Given
More informationOOP in Java Review. CS356 Object-Oriented Design and Programming October 1, 2014
OOP in Java Review CS356 Object-Oriented Design and Programming http://cs356.yusun.io October 1, 2014 Yu Sun, Ph.D. http://yusun.io yusun@csupomona.edu Announcement Submit your GitHub username as soon
More informationBalanced Trees Part Two
Balanced Trees Part Two Outline for Today Recap from Last Time Review of B-trees, 2-3-4 trees, and red/black trees. Order Statistic Trees BSTs with indexing. Augmented Binary Search Trees Building new
More informationENTITY-RELATIONSHIP MODEL
Assigned reading: Chapter 4 ENTITY-RELATIONSHIP MODEL Lecture 1 Relational database model Used by all major commercial database systems Very simple model Query with high-level languages: simple yet expressive
More informationEcient Redo Processing in. Jun-Lin Lin. Xi Li. Southern Methodist University
Technical Report 96-CSE-13 Ecient Redo Processing in Main Memory Databases by Jun-Lin Lin Margaret H. Dunham Xi Li Department of Computer Science and Engineering Southern Methodist University Dallas, Texas
More informationBrowsing and Querying in Object-Oriented Databases. Juliano Lopes de Oliveira. Ricardo de Oliveira Anido. Departamento de Ci^encia da Computac~ao
Browsing and Querying in Object-Oriented Databases Juliano Lopes de Oliveira Ricardo de Oliveira Anido Departamento de Ci^encia da Computac~ao UNICAMP - BRAZIL Abstract We present a new interface for Object-Oriented
More informationAssignment 4. Overview. Prof. Stewart Weiss. CSci 335 Software Design and Analysis III Assignment 4
Overview This assignment combines several dierent data abstractions and algorithms that we have covered in class, including priority queues, on-line disjoint set operations, hashing, and sorting. The project
More informationINTEGRATED MANAGEMENT OF LARGE SATELLITE-TERRESTRIAL NETWORKS' ABSTRACT
INTEGRATED MANAGEMENT OF LARGE SATELLITE-TERRESTRIAL NETWORKS' J. S. Baras, M. Ball, N. Roussopoulos, K. Jang, K. Stathatos, J. Valluri Center for Satellite and Hybrid Communication Networks Institute
More informationWorking with Mediator Framework
CHAPTER 2 This chapter describes the Mediator framework and includes the following sections: Framework Overview, page 2-1 Configurable Nodes, page 2-2 Composite Nodes, page 2-4 Getting and Setting Node
More informationVISUAL INTEGREATED SYSTEM FOR OBJECT-ORIENTED DEVELOPMENT AND EXPLOITATION OF A SPECIAL CLASS INFORMATIONAL SYSTEMS
VISUAL INTEGREATED SYSTEM FOR OBJECT-ORIENTED DEVELOPMENT AND EXPLOITATION OF A SPECIAL CLASS INFORMATIONAL SYSTEMS ABSTRACT The work introduces a tool for rapid design and development of information system
More information2 Data Reduction Techniques The granularity of reducible information is one of the main criteria for classifying the reduction techniques. While the t
Data Reduction - an Adaptation Technique for Mobile Environments A. Heuer, A. Lubinski Computer Science Dept., University of Rostock, Germany Keywords. Reduction. Mobile Database Systems, Data Abstract.
More informationLecture 13: Object orientation. Object oriented programming. Introduction. Object oriented programming. OO and ADT:s. Introduction
Lecture 13: Object orientation Object oriented programming Introduction, types of OO languages Key concepts: Encapsulation, Inheritance, Dynamic binding & polymorphism Other design issues Smalltalk OO
More informationATool For Mapping Between Two Ontologies Using Explicit Information
From: AAAI Technical Report WS-02-09. Compilation copyright 2002, AAAI (www.aaai.org). All rights reserved. ATool For Mapping Between Two Ontologies Using Explicit Information Sushama Prasad, Yun Peng,
More informationEvaluating XPath Queries
Chapter 8 Evaluating XPath Queries Peter Wood (BBK) XML Data Management 201 / 353 Introduction When XML documents are small and can fit in memory, evaluating XPath expressions can be done efficiently But
More informationHYRISE In-Memory Storage Engine
HYRISE In-Memory Storage Engine Martin Grund 1, Jens Krueger 1, Philippe Cudre-Mauroux 3, Samuel Madden 2 Alexander Zeier 1, Hasso Plattner 1 1 Hasso-Plattner-Institute, Germany 2 MIT CSAIL, USA 3 University
More informationShortcomings of Existing Approaches
Object Database Evolution using Separation of Concerns Awais Rashid, Peter Sawyer {marash sawyer}@comp.lancs.ac.uk Computing Department, Lancaster University, Lancaster LA1 4YR, UK Abstract This paper
More informationChapter 13. Object-Oriented Databases (from E&N and my editing)
Chapter 13 Object-Oriented Databases (from E&N and my editing) Introduction Traditional Data Models : Hierarchical, Network (since mid- 60 s), Relational (since 1970 and commercially since 1982) Object
More informationManaging ANSA Objects with OSI Network Management Tools. on the joint ISO-ITU `Reference Model for Open Distributed. to OSI managers.
Managing ANSA Objects with OSI Network Tools Guy Genilloud Computer Engineering Department EPFL-DI-LIT Swiss Federal Institute of Technology CH-1015 Lausanne, SWITZERLAND Marc Polizzi Computer Engineering
More informationCSE 530A. ER Model. Washington University Fall 2013
CSE 530A ER Model Washington University Fall 2013 Database Design Requirements Analysis Conceptual Database Design Creates an abstract model Logical Database Design Converts abstract model to concrete
More informationTHE IMPLEMENTATION OF A DISTRIBUTED FILE SYSTEM SUPPORTING THE PARALLEL WORLD MODEL. Jun Sun, Yasushi Shinjo and Kozo Itano
THE IMPLEMENTATION OF A DISTRIBUTED FILE SYSTEM SUPPORTING THE PARALLEL WORLD MODEL Jun Sun, Yasushi Shinjo and Kozo Itano Institute of Information Sciences and Electronics University of Tsukuba Tsukuba,
More informationSupplement 207 Conformity Assessment
Supplement 207 Conformity Assessment WG-31 Conformance, May 2018 Contents What did we achieve so far [WG-06]? [Nov-17] DICOM Conformity Assessment Model [Nov-17] Definitions for conformance based on OASIS
More informationSuper-Key Classes for Updating. Materialized Derived Classes in Object Bases
Super-Key Classes for Updating Materialized Derived Classes in Object Bases Shin'ichi KONOMI 1, Tetsuya FURUKAWA 1 and Yahiko KAMBAYASHI 2 1 Comper Center, Kyushu University, Higashi, Fukuoka 812, Japan
More informationMIS Database Systems Entity-Relationship Model.
MIS 335 - Database Systems Entity-Relationship Model http://www.mis.boun.edu.tr/durahim/ Ahmet Onur Durahim Learning Objectives Database Design Main concepts in the ER model? ER Diagrams Database Design
More informationChecking: Trading Space for Time. Divesh Srivastava. AT&T Research. 10]). Given a materialized view dened using database
Materialized View Maintenance and Integrity Constraint Checking: Trading Space for Time Kenneth A. Ross Columbia University kar@cs.columbia.edu Divesh Srivastava AT&T Research divesh@research.att.com S.
More informationDepartment DeptId : N Dname : S Proj. Vehicle VId : N Manufacturer Color : S Model : S
Horizontal Class Partitioning in Object-Oriented Databases? Ladjel Bellatreche 1 and Kamalakar Karlapalem 1 and Ana Simonet 2 1 University of Science and Technology Department of Computer Science Clear
More informationRedo Log Undo Log. Redo Log Undo Log. Redo Log Tail Volatile Store. Pers. Redo Log
Recovering from Main-Memory Lapses H.V. Jagadish AT&T Research Murray Hill, NJ 07974 jag@research.att.com Avi Silberschatz Bell Laboratories Murray Hill, NJ 07974 avi@bell-labs.com S. Sudarshan Indian
More information15 418/618 Project Final Report Concurrent Lock free BST
15 418/618 Project Final Report Concurrent Lock free BST Names: Swapnil Pimpale, Romit Kudtarkar AndrewID: spimpale, rkudtark 1.0 SUMMARY We implemented two concurrent binary search trees (BSTs): a fine
More informationIntroduction. New latch modes
A B link Tree method and latch protocol for synchronous node deletion in a high concurrency environment Karl Malbrain malbrain@cal.berkeley.edu Introduction A new B link Tree latching method and protocol
More informationAbstract Relaxed balancing has become a commonly used concept in the design of concurrent search tree algorithms. The idea of relaxed balancing is to
The Performance of Concurrent Red-Black Tree Algorithms Institut fur Informatik Report 5 Sabine Hanke Institut fur Informatik, Universitat Freiburg Am Flughafen 7, 79 Freiburg, Germany Email: hanke@informatik.uni-freiburg.de
More informationComparing the performance of object and object relational database systems on objects of varying complexity
Comparing the performance of object and object relational database systems on objects of varying complexity Kalantari, R and Bryant, CH http://dx.doi.org/10.1007/978 3 642 25704 9_8 Title Authors Type
More informationLocking Based Concurrency Control. for Integrated Real-Time Database Systems. D. Hong y. S. Chakravarthy. T. Johnson
Locking Based Concurrency Control for Integrated Real-Time Database Systems D. Hong y S. Chakravarthy T. Johnson Database Systems Research and Development Center Computer and Information Science and Engineering
More informationUnit3: Java in the large. Prepared by: Dr. Abdallah Mohamed, AOU-KW
Prepared by: Dr. Abdallah Mohamed, AOU-KW 1 1. Introduction 2. Objects and classes 3. Information hiding 4. Constructors 5. Some examples of Java classes 6. Inheritance revisited 7. The class hierarchy
More informationAn Optimal Locking Scheme in Object-Oriented Database Systems
An Optimal Locking Scheme in Object-Oriented Database Systems Woochun Jun Le Gruenwald Dept. of Computer Education School of Computer Science Seoul National Univ. of Education Univ. of Oklahoma Seoul,
More informationA Framework for Schema Updates In An Object-Oriented Database System
A Framework for Schema Updates In An Object-Oriented Database System Roberto Zicari GIP Altair 78153 Le Chesnay Cedex, France and Politecnico di Milano, Milano, Italy. Abstract Updating the schema is an
More informationSkill. Robot/ Controller
Skill Acquisition from Human Demonstration Using a Hidden Markov Model G. E. Hovland, P. Sikka and B. J. McCarragher Department of Engineering Faculty of Engineering and Information Technology The Australian
More informationNotes. These slides are based on slide sets provided by M. T. Öszu and by R. Ramakrishnan and J. Gehrke. CS 640 Views Winter / 15.
Views and View Management Olaf Hartig David R. Cheriton School of Computer Science University of Waterloo CS 640 Principles of Database Management and Use Winter 2013 These slides are based on slide sets
More informationDATABASE PERFORMANCE AND INDEXES. CS121: Relational Databases Fall 2017 Lecture 11
DATABASE PERFORMANCE AND INDEXES CS121: Relational Databases Fall 2017 Lecture 11 Database Performance 2 Many situations where query performance needs to be improved e.g. as data size grows, query performance
More informationThe C++ SoftBench Class Editor
The C++ SoftBench Class Editor The C++ SoftBench class editor adds automatic code generation capabilities to the class graph of the SoftBench static analyzer. Novice C++ programmers can concentrate on
More informationExperiences Report on the Implementation of EPTs for GNAT
Experiences Report on the Implementation of EPTs for GNAT Rodrigo García García, Alfred Strohmeier Software Engineering Laboratory Swiss Federal Institute of Technology in Lausanne (EPFL) CH-1015 Lausanne
More informationBrian Drabble, Je Dalton and Austin Tate
Technical Report O-Plan Tasking Specication Brian Drabble, Je Dalton and Austin Tate Approved for public release; distribution is unlimited Articial Intelligence Applications Institute University of Edinburgh
More informationThe Google File System
October 13, 2010 Based on: S. Ghemawat, H. Gobioff, and S.-T. Leung: The Google file system, in Proceedings ACM SOSP 2003, Lake George, NY, USA, October 2003. 1 Assumptions Interface Architecture Single
More informationObject Relationships
Object Relationships Objects can work together in three different types of relationships: Uses: An object can use another to do some work (association). Composition: A complex object may be composed of
More informationA Multidatabase Platform to Support. Prototyping Environments. Omar Boucelma, Jean-Claude Franchitti, and Roger King.
A Multidatabase Platform to Support Prototyping Environments Omar Boucelma, Jean-Claude Franchitti, and Roger King Department of Computer Science University of Colorado at Boulder Campus Box 430 Boulder,
More informationusing Classication and Abstraction Approaches December 23, 1999 Abstract
Integrating Symbolic Images into a Multimedia Database System using Classication and Abstraction Approaches Aya Soer Computer Science Department and Center for Automation Research and Institute for Advanced
More informationA Practical and Modular Method. to Implement Extended Transaction Models. Roger Barga and Calton Pu.
A Practical and Modular Method to Implement Extended Transaction Models Roger Barga and Calton Pu email: fbarga,caltong@cse.ogi.edu Department of Computer Science and Engineering Oregon Graduate Institute
More informationIntroduction to OOP. Procedural Programming sequence of statements to solve a problem.
Introduction to OOP C++ - hybrid language improved and extended standard C (procedural language) by adding constructs and syntax for use as an object oriented language. Object-Oriented and Procedural Programming
More informationArchitecting Object Applications for High Performance with Relational Databases
Architecting Object Applications for High Performance with Relational Databases Shailesh Agarwal 1 Christopher Keene 2 Arthur M. Keller 3 1.0 Abstract This paper presents an approach for architecting OO
More informationHeap-on-Top Priority Queues. March Abstract. We introduce the heap-on-top (hot) priority queue data structure that combines the
Heap-on-Top Priority Queues Boris V. Cherkassky Central Economics and Mathematics Institute Krasikova St. 32 117418, Moscow, Russia cher@cemi.msk.su Andrew V. Goldberg NEC Research Institute 4 Independence
More informationhighest cosine coecient [5] are returned. Notice that a query can hit documents without having common terms because the k indexing dimensions indicate
Searching Information Servers Based on Customized Proles Technical Report USC-CS-96-636 Shih-Hao Li and Peter B. Danzig Computer Science Department University of Southern California Los Angeles, California
More informationDeukyeon Hwang UNIST. Wook-Hee Kim UNIST. Beomseok Nam UNIST. Hanyang Univ.
Deukyeon Hwang UNIST Wook-Hee Kim UNIST Youjip Won Hanyang Univ. Beomseok Nam UNIST Fast but Asymmetric Access Latency Non-Volatility Byte-Addressability Large Capacity CPU Caches (Volatile) Persistent
More informationIncome < 50k. low. high
A Multi-Tier Architecture for High-Performance Data Mining Ralf Rantzau and Holger Schwarz University of Stuttgart, Institute of Parallel and Distributed High-Performance Systems (IPVR), Breitwiesenstr.
More information