A Framework for Storage Management Evaluation in Persistent Object Systems
|
|
- Gervase Crawford
- 6 years ago
- Views:
Transcription
1 A Framework for Storage Management Evaluation in Persistent Object Systems Thorna O. Humphries Alexander L. Wolf Benjamin G. Zorn University of Colorado University of Colorado University of Colorado Abstract With the advent of object oriented database management systems, the need to evaluate and improve the performance of these systems has led to research in the area of system benchmarking. One traditional approach has been to implement an application using a particular database management system and incorporate methods in the application to perform analysis and experimentation on functions of the system, such as storage management. In this paper, we present another approach to performance evaluation. We describe PTFF, a common trace file format, and Tragedy, a trace generation tool. The advantages of our approach include: Applications can be modeled independent of any database management language or system. The instrumentation necessary to perform experimentation and analysis of storage management is transparent to the application layer. The trace event files only have to be generated once and can be used for several experiments. The development of applications for system benchmarking can be reduced through the reuse of classes provided as libraries. The experiences of the POSSE group with our previous approaches are also discussed as well as our newest approach. 1. Introduction In the area of object database management system (ODBMS) development, there is a need to have benchmarks for assessment of their performance. The POSSE (Persistent Object SyStem Evaluation) project seeks to design, implement, and evaluate alternative implementation methods for persistent object systems 1. For the past three years, our work is specifically focused on the problem of storage management in such systems [CWZ 94, CKWZ 96, CWZ 98]. In our efforts to develop new policies for storage management, we have developed a trace file format, PTFF [KWZ 96], and hand instrumented an implementation of the OO7 benchmark [CDN 93] with methods to record its structure and behavior using that format. To evaluate or improve performance of a system, its behavior must be captured in a meaningful manner. Conceptually, the process of benchmarking consists of three elements: the behavior of an application, a representation of the behavior, and the 1 For more information about the POSSE project, visit our WWW page at: 1
2 analysis with respect to some aspect of the performance of the object database system. Figure 1 shows the elements of the benchmark process and examples of these elements. In order to capture the behavior of an application, the application must be instrumented so that the relevant events can be recorded. For example, in the case of storage management, the creation of objects, the deletion of objects, and the creation of edges from a given object are typical events that must be recorded to obtain a representation of the structure of the database and the behavior of the database application. In this paper, we will discuss our experiences with the development of traces using the OO7 benchmark and the Exodus storage manager for storage management analysis. The lessons learned from this endeavor have led us to examine other approaches to instrumentation of object database applications for system benchmarking. The main focus of this paper is to describe one alternative approach that uses Tragedy (TRAce GEneration for Database systems) [HWZ 97] and the POSSE trace file format (PTFF) [KWZ 96] to capture the structure and application behavior of object database applications. Process Elements Examples Applications + Instrumentation OO7 Tragedy Trace File PTFF file Analysis Tools ODBsim, Visualization, Statistics (SPSS, S+) Figure 1. Elements of System Benchmarking PTFF is the specification of a set of events that characterize the operations on object databases and persistent stores. It provides a means of capturing the structure and the behavior of an object database in a system and machine independent way. PTFF files can be used for a variety of investigations, including simulation studies, application visualizations, debugging, and statistical summaries of application behavior. We 2
3 generated traces in PTFF format in our hand instrumented E/Exodus implementation of the OO7 benchmark. Tragedy is a tool that consists of a TCL interface and a collection of classes to allow the transparent instrumentation of a database application. The TCL interface provides a interactive mechanism for setting up the activities of the benchmark, such as database creation, the execution of traversals and the execution of queries. The collection of classes of this tool provides a mechanism for instrumenting the operations of a database application. With Tragedy, we are able to model object database applications with no database management language or system support, with transparent support for generating our trace files, and with high-level support for constructing complex application behaviors. The remainder of this position paper is organized as follows. In the next section, we discuss our previous experiences with the instrumentation of the OO7 benchmark. We also discuss related work. A discussion of PTFF is presented in Section 3. Section 4 presents Tragedy. We conclude in Section 5 with a discussion of the status of our work and plans for future work. 2. Background The POSSE group is interested in developing and evaluating high performance algorithms for storage management in object database systems. Our research has concentrated on partition-based algorithms, and our previous results include new methods for partition selection [CWZ 94] and methods for controlling garbage collection rates [CKWZ 96]. Our approach to performance evaluation has evolved in the last several years, and the interfaces and formats described in this paper are the result of our experiences. Our initial approach to performance evaluation involved simultaneously developing a simulation system and synthetic database application. The application, ABT (Augmented Binary Tree), was a parameterized synthetic benchmark that interacted via procedure calls directly with our ODBMS simulation system (ODBsim). This monolithic approach had weaknesses, including the fact that changing the application meant rewriting code, and understanding the system was difficult. Because we wanted to relate our performance results to more realistic database applications and previous work in ODBMS storage management, we chose to use OO7 as a benchmark, which meant we had to restructure our simulation system. Our secondgeneration approach followed the process illustrated on the left-hand side of Figure 2. In particular, the original OO7 benchmark was hand-instrumented to produce an instrumented version of the application, and this version was run in the context of the Exodus storage manager to produce a trace file. We also modified our simulation system, ODBsim, to read the specified trace format. 3
4 Application Application Spec. Tragedy Lib. Schema Instrument By Hand Instrument Using Tragedy Instrumented Application Instrumented Application DBMS EXECUTE EXECUTE Trace File Analyzer Perf. Results Figure 2. Two Approaches to Instrumentation and Evaluation of an ODBMS 4
5 While the second generation was an improvement over our first generation technology, there were still problems. In particular, instrumenting the OO7 application required modifying the original code to add trace-gathering instrumentation, and instrumenting OO7 gave us no additional leverage when we wanted to instrument a new ODBMS application. Furthermore, the OO7 implementation we were using was developed on a MIPS-based Decstation, and in the subsequent years, our local MIPS machines were replaced by DEC Alphas, rendering the earlier instrumentation unusable. The result of this previous experience is the combination of Tragedy and PTFF, as illustrated on the right-hand side of Figure 2. In this case, the structure of the application database is modeled using predefined Tragedy library classes representing objects and edges, and the behavior of the database application is specified using a combination of high-level phase and traversal specifications in TCL, and a lower-level implementation specified in C++. These components are integrated with the Tragedy library, and an instrumented version of the database application results. 2.1 Related Work Researchers in the area of memory storage management have effectively used the tracedriven approach to instrument systems for performance evaluation. This approach has been used in the studies of malloc algorithms such as in [DDZ 94, KV 85]. In order to capture various types of information about the behavior of a program or system, several trace formats have been developed. In the area of database systems, the MaStA I/O trace format [SCM+ 95] was developed to capture information necessary for performance evaluation of I/O costs. The trace events of MaStA record information on reading, writing, and synchronization operations that are performed on a database. Recently, a trace-driven approach has been taken to develop a prototype program visualization system, PV [ KRR 94], at IBM Research. The trace format of the PV system records the event type identifier, a timestamp, and some event-specific data for each of its supported events. Some of the events of this system include a page fault, allocation of a region of memory, and receipt of a message. 3. POSSE Trace File Format (PTFF) The goals of our work on a common trace file format include the following: To develop a trace format that can be used to study and evaluate performance issues such as storage management, well as other analysis activities. To develop a system independent representation of object database application behavior. To support comparative experimentation of ODBMS implementations by promoting the creation of a collection of representative object database application behaviors in a common file format. 5
6 The POSSE trace file format consists of a collection of events that capture the structure and application behavior of a database system. The structure of an object database is captured through the object creation, the edge creation, and the data writing events. Its application behavior is captured through the edge reading, the data writing, and the data reading events. Examples of the events that are represented in PTFF are shown in Figure 3. PTFF trace files can be used as input to a variety of analysis tools. An example of an analysis tool using PTFF files is ODBsim [CWZ 93], a simulator that the POSSE group uses to experiment with different object database storage management policies. Trace Begin Co Dw Dw Ew Dr Sr 10 // object creation with 11 edges // write data at offset 0 of the object for a length of 4 bytes // write data at offset 4 of the object for a length of 4 bytes // write edge number 0 and connect it to the null object // read data at offset 0 of the object for a length of 4 bytes // make the object a persistent root Figure 3. Examples of Trace File Events represented with PTFF 4. Tragedy Trace Generation Tool 4.1 Overview of Tragedy The trace generation tool was conceived in an attempt to synthetically generate a collection of object databases that are representative of real databases and their applications. It consists of two components, a TCL interface and a collection of library classes to model and instrument object database applications. The results of executions are stored in PTFF files. The goals of Tragedy are as follows: To provide a flexible, high-level toolkit for the construction of diverse and complex object database application behaviors. To allow transparent instrumentation of application behavior and generation of a common trace file format (PTFF). To synthetically generate a collection of object database systems. To generate event traces that reflect an application s behavior. The TCL interface is provided to aid the user in developing the activities of the benchmark. The database application is viewed as consisting of phases, which may consist of one or more of the following activities: a database creation activity, a database re-organization activity, and an activity in which the data is manipulated through traversals, queries, and updates. Each phase is supported by the TCL interface through the Tragedy application and user-defined TCL commands. 6
7 Tragedy consists of a collection of classes, some of which are used to model the objects of the database system. These classes are GraphNode and Edges. The class GraphNode is used as a base type for the objects of the database system. The class Edges is used to model references contained in these objects. Through the classes provided by Tragedy, trace events are automatically generated as operations are applied to the objects of the database system. These trace events are then recorded in a file using PTFF. 4.2 Modeling a Database Application In order to use Tragedy, the schema and the application specification of a database system must first be converted into objects that are implemented as C++ classes. These objects become subtypes of the GraphNode object. They are modeled as graph nodes with directed edges. In Figure 4, the data structure for the object CompositePart, which has been extracted from the C++ version of the OO7 benchmark [CDN 93], is modeled using the objects, GraphNode and Edges. The object CompositePart is created as a subtype of the object GraphNode. Also, the pointer values of the CompositePart class definition become edges when they are represented by the data structures of Tragedy. The methods of the database application that implement queries and updates are modeled as traversal and operation objects. The application interface provides three predefined traversal objects. These traversal objects implement a depth-first traversal with pre-node processing, a depth-first traversal with post-node processing, and a breadth-first traversal. These traversal objects are implemented so that the operation performed at each object is generic. Operations can perform a variety of tasks, such as updating an object, referencing the data information of an object, or updating the structure of the database by adding or deleting an object, and are determined by the database application. Some of the methods are then mapped into TCL commands. The TCL interface of Tragedy provides commands to create the database and build the pre-defined traversals. User-defined commands that invoke methods that define operations on the objects of the database can be added to the TCL application layer. 5. Conclusion Tragedy provides a framework for developing event traces that capture the structure as well as the behavior of synthetically generated applications. We feel that instrumentation of an application on top of a database management system limits the generation of a trace file to the particular platform that supports the database management system or object storage system. We also found that the process of instrumentation that requires a translation of the database schema to a particular database language can be a very time consuming endeavor and cannot be altered quickly to gather other information about the application. 7
8 Schema for DesignObj and CompositePart Class DesignObj{ Int4 Char Int4 }; id; type[10]; builddate; class CompositePart: DesignObj { Document* Bag(BaseAssembly*) Bag(BaseAssembly*) Set(AtomicPart*) AtomicPart* } with extent (id indexed); documentation; usedinpriv; usedinshar; parts; rootpart; Composite Part GraphNode DesignObj Trace Data Object Pointer OutEdges Id Type builddate Edges Documentation UsedInPriv UsedInShar Parts RootPart Figure 4. Representation for object CompositePart in OO7 Benchmark 5.1 Status Tragedy is implemented in C++. The tool provides an interface for recording trace events. It also provides a TCL front-end that allows a user to specify various parameters that are needed to generate the database and then to specify traversals and queries to be performed on the objects of the data base system. The trace generation tool has been tested using a few synthetic single user workloads. The traces have then been submitted to our in-house simulator to be processed. The tool has also been used to model the inmemory version of the OO7 benchmark. We are currently in the process of comparing 8
9 the trace files generated with Tragedy to those generated through instrumentation of the OO7 benchmark using Exodus. At the time of this writing, we have not concluded our evaluation. 5.2 Future Work The trace generation tool is currently set up to generate workloads based on a single user. Although the single user workload provides useful information for some forms of analysis, it is not completely representative of workloads of real database systems. In order to create a more realistic modeling tool, one of the enhancements that will be made to the tool is to incorporate transaction processing and locking support to allow for concurrent access. We would also like to model a portion of a real object oriented database application to determine the ease of modeling such an application using the trace generation tool. In addition to the above enhancements, we would like to expand our trace file format by adding additional events to handle dynamic edges and dynamic data. Furthermore, we are looking at using the trace file produced by Tragedy to visualize the time varying behavior of the database structure. Acknowledgments This work was supported in part by the National Science Foundation under grant IRI References [CDN 93] Michael J. Carey, David J. DeWitt, and Jeffrey F. Naugton. The OO7 Benchmark. In Proceedings of the ACM SIGMOD International Conference on the Management of Data, pages 12 21, Washington, DC, June [CWZ 93] Jonathan E. Cook, Alexander L. Wolf, and Benjamin G. Zorn. The design of a simulation system for persistent object storage management. Technical Report CU-CS , Department of Computer Science, University of Colorado, Boulder, CO, March [CWZ 94] Jonathan E. Cook, Alexander L. Wolf, and Benjamin G. Zorn. Partition selection policies in object database garbage collection. In Proceedings of the ACM SIGMOD International Conference on the Management of Data, pages , Minneapolis, MN, March [CWZ 98] Jonathan E. Cook, Alexander L. Wolf, and Benjamin G. Zorn. A highly effective partition selection policy for object database garbage collection. To appear in IEEE Transactions on Knowledge and Data Engineering. [CKWZ 96] Jonathan E. Cook, Artur W. Klauser, Alexander L. Wolf, and Benjamin G. Zorn. Semiautomatic, self-adaptive control of garbage collection rates in object databases. In Proceedings of the ACM SIGMOD International Conference on the Management of Data, pages , Montreal, Canada, June
10 [DDZ 94] David Detlefs, Al Dosser, and Benjamin Zorn, Memory Allocation Costs in Large C and C++ Programs, Software-Practice and Experience, pages , June [HWZ 97] Thorna O. Humphries, Alexander L. Wolf, Benjamin G. Zorn. Tragedy, Trace Generation Tool Design Specification. Department of Computer Science, University of Colorado, Boulder, CO. (in preparation) [KRR 94] Doug Kimelman, Bryan Rosenburg, and Tova Roth. Strata- Various: Multi-layer visualization of dynamics in software system behavior.[ On-Line] Available URL: [KWZ 96] Artur G. Klauser, Alexander L. Wolf, and Benjamin G. Zorn. POSSE Trace File Format Version 0.9 Draft. Department of Computer Science, University of Colorado, Boulder, CO, June [KV 85] David G. Korn and Kiem-Phong Vo, In Search of a Better Malloc, Proceedings of the Summer 1985 USENIX Conference, pages , [SCM+ 95] S.J.G. Scheuer, R.C.H. Connor, R. Morrison, J.E.B. Moss and D.S. Munro. The MaSta I/O trace format. School of Mathematical and Computational Sciences, University of St. Andrews, North Haugh, St Andrews, Fife, Scotland. Technical Report CS/95/4,
Bytecode Instrumentation as an Aid in Understanding the Behavior of Java Persistent Stores 1
Bytecode Instrumentation as an Aid in Understanding the Behavior of Java Persistent Stores 1 Han Bok Lee and Benjamin G Zorn Department of Computer Science University of Colorado, Boulder 80309 ABSTRACT
More informationA Highly Effective Partition Selection Policy for Object Database Garbage Collection
IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, VOL. 10, NO. 1, JANUARY/FEBRUARY 1998 153 A Highly Effective Partition Selection Policy for Object Database Garbage Collection Jonathan E. Cook, Member,
More informationDesigning a Trace Format for Heap Allocation Events
Designing a Trace Format for Heap Allocation Events Trishul Chilimbi Microsoft Research One Microsoft Way Redmond, WA, 98052 USA trishulc@microsoft.com Richard Jones Computing Laboratory University of
More informationMemory Allocation Costs. in Large C and C++ Programs. David Detlefs and Al Dosser. Systems Research Center. Digital Equipment Corporation
Memory Allocation Costs in Large C and C++ Programs David Detlefs and Al Dosser Systems Research Center Digital Equipment Corporation 130 Lytton Avenue Palo Alto, CA 94301 Benjamin Zorn Department of Computer
More informationQuickStore: A High Performance Mapped Object Store
QuickStore: A High Performance Mapped Object Store Seth J. White David J. DeWitt Computer Sciences Department Computer Sciences Department University of Wisconsin University of Wisconsin Madison, WI 53706
More informationDatabase Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 9 Database Design Objectives In this chapter, you will learn: That successful database design must reflect the information
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 informationQUERY PROCESSING IN A RELATIONAL DATABASE MANAGEMENT SYSTEM
QUERY PROCESSING IN A RELATIONAL DATABASE MANAGEMENT SYSTEM GAWANDE BALAJI RAMRAO Research Scholar, Dept. of Computer Science CMJ University, Shillong, Meghalaya ABSTRACT Database management systems will
More informationLow Overhead Concurrency Control for Partitioned Main Memory Databases
Low Overhead Concurrency Control for Partitioned Main Memory Databases Evan Jones, Daniel Abadi, Samuel Madden, June 2010, SIGMOD CS 848 May, 2016 Michael Abebe Background Motivations Database partitioning
More informationODMG 2.0: A Standard for Object Storage
Page 1 of 5 ODMG 2.0: A Standard for Object Storage ODMG 2.0 builds on database, object and programming language standards to give developers portability and ease of use by Doug Barry Component Strategies
More informationImplementation of Relational Operations in Omega Parallel Database System *
Implementation of Relational Operations in Omega Parallel Database System * Abstract The paper describes the implementation of relational operations in the prototype of the Omega parallel database system
More informationAbout the Tutorial. Audience. Prerequisites. Copyright & Disclaimer DBMS
About the Tutorial Database Management System or DBMS in short refers to the technology of storing and retrieving users data with utmost efficiency along with appropriate security measures. DBMS allows
More informationGlossary. abort. application schema
Glossary abort An abnormal termination of a transaction. When a transaction aborts, its changes to the database are erased, and the database is effectively restored to its state as of the moment the transaction
More informationThis paper should be referenced as:
This paper should be referenced as: Farkas, A.M., Dearle, A., Kirby, G.N.C., Cutts, Q.I., Morrison, R. & Connor, R.C.H. Persistent Program Construction through Browsing and User Gesture with some Typing.
More informationVirtual Memory Primitives for User Programs
Virtual Memory Primitives for User Programs Andrew W. Appel & Kai Li Department of Computer Science Princeton University Presented By: Anirban Sinha (aka Ani), anirbans@cs.ubc.ca 1 About the Authors Andrew
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 informationCS Programming In C
CS 24000 - Programming In C Week 16: Review Zhiyuan Li Department of Computer Science Purdue University, USA This has been quite a journey Congratulation to all students who have worked hard in honest
More informationArchitectural Blueprint
IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint
More informationRequest for Comments: 304 NIC: 9077 February 17, 1972 Categories: D3, D4, D7 Obsoletes: none Updates: none
Network Working Group D. B. McKay Request for Comments: 304 IBM NIC: 9077 February 17, 1972 Categories: D3, D4, D7 Obsoletes: none Updates: none Introduction A Data Management System Proposal for the ARPA
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 informationPractical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems
Practical Database Design Methodology and Use of UML Diagrams 406.426 Design & Analysis of Database Systems Jonghun Park jonghun@snu.ac.kr Dept. of Industrial Engineering Seoul National University chapter
More informationDatabase Fundamentals Chapter 1
Database Fundamentals Chapter 1 Class 01: Database Fundamentals 1 What is a Database? The ISO/ANSI SQL Standard does not contain a definition of the term database. In fact, the term is never mentioned
More informationIntegrity 10. Curriculum Guide
Integrity 10 Curriculum Guide Live Classroom Curriculum Guide Integrity 10 Workflows and Documents Administration Training Integrity 10 SCM Administration Training Integrity 10 SCM Basic User Training
More informationEaSync: A Transparent File Synchronization Service across Multiple Machines
EaSync: A Transparent File Synchronization Service across Multiple Machines Huajian Mao 1,2, Hang Zhang 1,2, Xianqiang Bao 1,2, Nong Xiao 1,2, Weisong Shi 3, and Yutong Lu 1,2 1 State Key Laboratory of
More informationOperating Systems Projects Built on a Simple Hardware Simulator
Operating Systems Projects Built on a Simple Hardware Simulator John Dickinson Department of Computer Science University of Idaho Moscow, ID 83844-1010 johnd@cs.uidaho.edu Abstract Effective teaching of
More informationProject 5: Extensions to the MiniJava Compiler
Project 5: Extensions to the MiniJava Compiler Due: Friday, March 7, 12:30 pm. In this assignment you will make two required extensions to the target code generator. You will also make an extension to
More informationSoftware Visualization. Presented by Sam Davis
Software Visualization Presented by Sam Davis 2 3 More than Just UML! UML is about static structure of software In terms of abstractions like Procedures Objects Files Packages But 4 Software is Dynamic!
More informationSurvey on File System Tracing Techniques
CSE598D Storage Systems Survey on File System Tracing Techniques Byung Chul Tak Department of Computer Science and Engineering The Pennsylvania State University tak@cse.psu.edu 1. Introduction Measuring
More informationObject Placement in Shared Nothing Architecture Zhen He, Jeffrey Xu Yu and Stephen Blackburn Λ
45 Object Placement in Shared Nothing Architecture Zhen He, Jeffrey Xu Yu and Stephen Blackburn Λ Department of Computer Science The Australian National University Canberra, ACT 2611 Email: fzhen.he, Jeffrey.X.Yu,
More informationScalable GPU Graph Traversal!
Scalable GPU Graph Traversal Duane Merrill, Michael Garland, and Andrew Grimshaw PPoPP '12 Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming Benwen Zhang
More informationSABLEJIT: A Retargetable Just-In-Time Compiler for a Portable Virtual Machine p. 1
SABLEJIT: A Retargetable Just-In-Time Compiler for a Portable Virtual Machine David Bélanger dbelan2@cs.mcgill.ca Sable Research Group McGill University Montreal, QC January 28, 2004 SABLEJIT: A Retargetable
More informationCS 241 Data Organization Binary Trees
CS 241 Data Organization Binary Trees Brooke Chenoweth University of New Mexico Fall 2017 Binary Tree: Kernighan and Ritchie 6.5 Read a file and count the occurrences of each word. now is the time for
More informationFrom Whence It Came: Detecting Source Code Clones by Analyzing Assembler
From Whence It Came: Detecting Source Code Clones by Analyzing Assembler Ian J. Davis and Michael W. Godfrey David R. Cheriton School of Computer Science University of Waterloo Waterloo, Ontario, Canada
More informationeswt Requirements and High-Level Architecture Abstract Document Information Change History
eswt Requirements and High-Level Architecture Abstract There is a need for a standardized UI API fit for embedded devices having fewer resources and smaller screen sizes than a desktop computer. The goal
More informationChapter 1 SQL and Data
Chapter 1 SQL and Data What is SQL? Structured Query Language An industry-standard language used to access & manipulate data stored in a relational database E. F. Codd, 1970 s IBM 2 What is Oracle? A relational
More informationComposability Test of BOM based models using Petri Nets
I. Mahmood, R. Ayani, V. Vlassov and F. Moradi 7 Composability Test of BOM based models using Petri Nets Imran Mahmood 1, Rassul Ayani 1, Vladimir Vlassov 1, and Farshad Moradi 2 1 Royal Institute of Technology
More informationTHE MINIBASE SOFTWARE
B THE MINIBASE SOFTWARE Practice is the best of all instructors. Publius Syrus, 42 B.C. Minibase is a small relational DBMS, together with a suite of visualization tools, that has been developed for use
More informationSynergetics-Standard-SQL Server 2012-DBA-7 day Contents
Workshop Name Duration Objective Participants Entry Profile Training Methodology Setup Requirements Hardware and Software Requirements Training Lab Requirements Synergetics-Standard-SQL Server 2012-DBA-7
More informationChapter 20: Binary Trees
Chapter 20: Binary Trees 20.1 Definition and Application of Binary Trees Definition and Application of Binary Trees Binary tree: a nonlinear linked list in which each node may point to 0, 1, or two other
More informationInteraction of JVM with x86, Sparc and MIPS
Interaction of JVM with x86, Sparc and MIPS Sasikanth Avancha, Dipanjan Chakraborty, Dhiral Gada, Tapan Kamdar {savanc1, dchakr1, dgada1, kamdar}@cs.umbc.edu Department of Computer Science and Electrical
More information70-459: Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform
70-459: Transition Your MCITP: Database Administrator 2008 or MCITP: Database Developer 2008 to MCSE: Data Platform The following tables show where changes to exam 70-459 have been made to include updates
More informationCS317 File and Database Systems
CS317 File and Database Systems Lecture 9 Intro to Physical DBMS Design October 22, 2017 Sam Siewert Reminders Assignment #4 Due Friday, Monday Late Assignment #3 Returned Assignment #5, B-Trees and Physical
More informationFile Management. Marc s s first try, Please don t t sue me.
File Management Marc s s first try, Please don t t sue me. Introduction Files Long-term existence Can be temporally decoupled from applications Sharable between processes Can be structured to the task
More informationThe DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.
Managing Data Data storage tool must provide the following features: Data definition (data structuring) Data entry (to add new data) Data editing (to change existing data) Querying (a means of extracting
More informationContents. Error Message Descriptions... 7
2 Contents Error Message Descriptions.................................. 7 3 4 About This Manual This Unify DataServer: Error Messages manual lists the errors that can be produced by the Unify DataServer
More informationHorizontal Fragmentation in Object DBMS: New Issues and Performance Evaluation'
Horizontal Fragmentation in Object DBMS: New Issues and Performance Evaluation' Fernanda BaiSio 293 Marta Mattoso Gerson Zaverucha 'v3 baiao @cos.ufrj.br marta @cos.ufrj.br gerson @cos.ufrj.br 2 Department
More informationShort Notes of CS201
#includes: Short Notes of CS201 The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with < and > if the file is a system
More informationAdvances in Data Management Principles of Database Systems - 2 A.Poulovassilis
1 Advances in Data Management Principles of Database Systems - 2 A.Poulovassilis 1 Storing data on disk The traditional storage hierarchy for DBMSs is: 1. main memory (primary storage) for data currently
More informationAfter Conversation - A Forensic ICQ Logfile Extraction Tool
Edith Cowan University Research Online ECU Publications Pre. 2011 2005 After Conversation - A Forensic ICQ Logfile Extraction Tool Kim Morfitt Edith Cowan University Craig Valli Edith Cowan University
More informationChapter Five Physical Database Design
Chapter Five Physical Database Design 1 Objectives Understand Purpose of physical database design Describe the physical database design process Choose storage formats for attributes Describe indexes and
More informationChapter 8. Database Design. Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel
Chapter 8 Database Design Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel 1 In this chapter, you will learn: That successful database design must reflect the information
More informationCharacterizing Home Pages 1
Characterizing Home Pages 1 Xubin He and Qing Yang Dept. of Electrical and Computer Engineering University of Rhode Island Kingston, RI 881, USA Abstract Home pages are very important for any successful
More informationAdding Type into a Commercial Object-Oriented Relational Database TOR
Adding Email Type into a Commercial Object-Oriented Relational Database TOR Hongfei Guo : guo@cs.wisc.edu Wanli Yang: ywl@cs.wisc.ecu Abstract One of the key object-relational features added to relational
More informationAn Overview of the BLITZ System
An Overview of the BLITZ System Harry H. Porter III Department of Computer Science Portland State University Introduction The BLITZ System is a collection of software designed to support a university-level
More informationCS201 - Introduction to Programming Glossary By
CS201 - Introduction to Programming Glossary By #include : The #include directive instructs the preprocessor to read and include a file into a source code file. The file name is typically enclosed with
More informationCASE TOOLS LAB VIVA QUESTION
1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary
More informationConstructs in Oracle
11. Object-Relational Constructs in Oracle 11-1 Part 11: Object-Relational References: Constructs in Oracle Jeffrey D. Ullman: Object-Relational Features of Oracle [http://infolab.stanford.edu/ ullman/fcdb/oracle/or-objects.html]
More informationAn Introduction to Databases and Database Management Systems.
An Introduction to Databases and Database Management Systems. Introduction An important aspect of most every business is record keeping. In our information society, this has become an important aspect
More informationdata elements (Delsey, 2003) and by providing empirical data on the actual use of the elements in the entire OCLC WorldCat database.
Shawne D. Miksa, William E. Moen, Gregory Snyder, Serhiy Polyakov, Amy Eklund Texas Center for Digital Knowledge, University of North Texas Denton, Texas, U.S.A. Metadata Assistance of the Functional Requirements
More informationCS140 Operating Systems Final December 12, 2007 OPEN BOOK, OPEN NOTES
CS140 Operating Systems Final December 12, 2007 OPEN BOOK, OPEN NOTES Your name: SUNet ID: In accordance with both the letter and the spirit of the Stanford Honor Code, I did not cheat on this exam. Furthermore,
More informationMulti-version Data recovery for Cluster Identifier Forensics Filesystem with Identifier Integrity
Multi-version Data recovery for Cluster Identifier Forensics Filesystem with Identifier Integrity Mohammed Alhussein, Duminda Wijesekera Department of Computer Science George Mason University Fairfax,
More informationCS162 - POINTERS. Lecture: Pointers and Dynamic Memory
CS162 - POINTERS Lecture: Pointers and Dynamic Memory What are pointers Why dynamically allocate memory How to dynamically allocate memory What about deallocation? Walk thru pointer exercises 1 CS162 -
More informationProject #1 Exceptions and Simple System Calls
Project #1 Exceptions and Simple System Calls Introduction to Operating Systems Assigned: January 21, 2004 CSE421 Due: February 17, 2004 11:59:59 PM The first project is designed to further your understanding
More informationAppendix: How to get OBST / tclobst. References
development effort for applications and by opening the way to functionality already available as Tcl extensions, most notably Tk and related s. With tcl the full power of is provided for convenient and
More informationDATABASE TECHNOLOGY - 1DL124
1 DATABASE TECHNOLOGY - 1DL124 Summer 2007 An introductury course on database systems http://user.it.uu.se/~udbl/dbt-sommar07/ alt. http://www.it.uu.se/edu/course/homepage/dbdesign/st07/ Kjell Orsborn
More informationIBM Informix Large Object Locator DataBlade Module User s Guide
IBM Informix Large Object Locator DataBlade Module User s Guide Version 1.2A March 2003 Part No. CT1V1NA Note: Before using this information and the product it supports, read the information in the appendix
More informationFile Management. Chapter 12
File Management Chapter 12 Files Used for: input to a program Program output saved for long-term storage Terms Used with Files Field basic element of data contains a single value characterized by its length
More informationDesign concepts for data-intensive applications
6 th International Conference on Applied Informatics Eger, Hungary, January 27 31, 2004. Design concepts for data-intensive applications Attila Adamkó Department of Information Technology, Institute of
More informationReusability Metrics for Object-Oriented System: An Alternative Approach
Reusability Metrics for Object-Oriented System: An Alternative Approach Parul Gandhi Department of Computer Science & Business Administration Manav Rachna International University Faridabad, 121001, India
More informationA Tool for Introducing Persistent Programming
A Tool for Introducing Persistent Programming Lukito Nugroho Geoff Sutcliffe Department of Electrical Engineering Department of Computer Science Gadjah Mada University James Cook University Jl. Grafika
More informationCS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University
Frequently asked questions from the previous class survey CS 370: OPERATING SYSTEMS [FILE SYSTEMS] Shrideep Pallickara Computer Science Colorado State University If you have a file with scattered blocks,
More informationSWEBOK. The Emerging Consensus on the Software Engineering Body of Knowledge. A. Abran, NSERC Ottawa, February 18, 2002
SWEBOK The Emerging Consensus on the Software Engineering Body of Knowledge A. Abran, P. Bourque,, R. Dupuis, J. W. Moore, L. Tripp NSERC Ottawa, February 18, 2002 ÉTS 1 Corporate Support by: Project managed
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 informationITCS Jing Yang 2010 Fall. Class 16: Object and Object- Relational Databases (ch.11) References
ITCS 3160 Jing Yang 2010 Fall Class 16: Object and Object- Relational Databases (ch.11) Slides come from: References Michael Grossniklaus, Moira Norrie (ETH Zürich): Object Oriented Databases (Version
More informationTRANSACTION-TIME INDEXING
TRANSACTION-TIME INDEXING Mirella M. Moro Universidade Federal do Rio Grande do Sul Porto Alegre, RS, Brazil http://www.inf.ufrgs.br/~mirella/ Vassilis J. Tsotras University of California, Riverside Riverside,
More informationStylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema
Stylus Studio Case Study: FIXML Working with Complex Message Sets Defined Using XML Schema Introduction The advanced XML Schema handling and presentation capabilities of Stylus Studio have valuable implications
More informationImproving Decision-Making Support
Improving Decision-Making Support by Linking Database results to Simulations Gio Wiederhold Stanford University May 2014 Gio Wiederhold SimQL 1 Problem : Mismatch Database Technology should support Decision-Making
More informationModellistica Medica. Maria Grazia Pia, INFN Genova. Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico
Modellistica Medica Maria Grazia Pia INFN Genova Scuola di Specializzazione in Fisica Sanitaria Genova Anno Accademico 2002-2003 Lezione 9 OO modeling Design Patterns Structural Patterns Behavioural Patterns
More informationTeamcenter 11.1 Systems Engineering and Requirements Management
SIEMENS Teamcenter 11.1 Systems Engineering and Requirements Management Systems Architect/ Requirements Management Project Administrator's Manual REQ00002 U REQ00002 U Project Administrator's Manual 3
More informationTHE EFFECT OF JOIN SELECTIVITIES ON OPTIMAL NESTING ORDER
THE EFFECT OF JOIN SELECTIVITIES ON OPTIMAL NESTING ORDER Akhil Kumar and Michael Stonebraker EECS Department University of California Berkeley, Ca., 94720 Abstract A heuristic query optimizer must choose
More informationProject 4: Implementing Malloc Introduction & Problem statement
Project 4 (75 points) Assigned: February 14, 2014 Due: March 4, 2014, 11:59 PM CS-3013, Operating Systems C-Term 2014 Project 4: Implementing Malloc Introduction & Problem statement As C programmers, we
More informationWorkload Characterization using the TAU Performance System
Workload Characterization using the TAU Performance System Sameer Shende, Allen D. Malony, and Alan Morris Performance Research Laboratory, Department of Computer and Information Science University of
More informationMPI: A Message-Passing Interface Standard
MPI: A Message-Passing Interface Standard Version 2.1 Message Passing Interface Forum June 23, 2008 Contents Acknowledgments xvl1 1 Introduction to MPI 1 1.1 Overview and Goals 1 1.2 Background of MPI-1.0
More informationTotal No. of Questions : 18] [Total No. of Pages : 02. M.Sc. DEGREE EXAMINATION, DEC First Year INFORMATION TECHNOLOGY.
(DMSIT01) Total No. of Questions : 18] [Total No. of Pages : 02 M.Sc. DEGREE EXAMINATION, DEC. 2016 First Year INFORMATION TECHNOLOGY Basics of IT Time : 3 Hours Maximum Marks : 70 Section - A (3 x 15
More informationFrom the Concrete to the Abstract: Visual Representations of Program Execution
From the Concrete to the Abstract: Visual Representations of Program Execution Steven P. Reiss and Guy Eddon Department of Computer Science Brown University Providence, RI 02912-1910 401-863-7641, FAX:
More information(Extended) Entity Relationship
03 - Database Design, UML and (Extended) Entity Relationship Modeling CS530 Database Architecture Models and Design Prof. Ian HORROCKS Dr. Robert STEVENS In this Section Topics Covered Database Design
More informationImproving Data Cache Performance via Address Correlation: An Upper Bound Study
Improving Data Cache Performance via Address Correlation: An Upper Bound Study Peng-fei Chuang 1, Resit Sendag 2, and David J. Lilja 1 1 Department of Electrical and Computer Engineering Minnesota Supercomputing
More informationData about data is database Select correct option: True False Partially True None of the Above
Within a table, each primary key value. is a minimal super key is always the first field in each table must be numeric must be unique Foreign Key is A field in a table that matches a key field in another
More informationVFS Interceptor: Dynamically Tracing File System Operations in real. environments
VFS Interceptor: Dynamically Tracing File System Operations in real environments Yang Wang, Jiwu Shu, Wei Xue, Mao Xue Department of Computer Science and Technology, Tsinghua University iodine01@mails.tsinghua.edu.cn,
More informationFIT1004 Database Topic 2: Database Design Life Cycle
FIT1004 Database Topic 2: Database Design Life Cycle Learning Objectives: Describe the 3 level ANSI SPARC Database Architecture and the advantages which its inherent data abstraction provide to the database
More informationChapter 12 Object and Object Relational Databases
Chapter 12 Object and Object Relational Databases - Relational Data Model - Object data model (OODBs) - Object-relational data models Traditional data models -network - hierarchical - relational They lack
More informationFILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23
FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most
More informationDryadLINQ. by Yuan Yu et al., OSDI 08. Ilias Giechaskiel. January 28, Cambridge University, R212
DryadLINQ by Yuan Yu et al., OSDI 08 Ilias Giechaskiel Cambridge University, R212 ig305@cam.ac.uk January 28, 2014 Conclusions Takeaway Messages SQL cannot express iteration Unsuitable for machine learning,
More informationChanging Persistent Applications
Changing Persistent Applications Alex Farkas and Alan Dearle {alex,al}@cs.adelaide.edu.au Department of Computer Science, University of Adelaide Adelaide, Australia Abstract During the lifetime of an application,
More informationCpt S 122 Data Structures. Course Review Midterm Exam # 1
Cpt S 122 Data Structures Course Review Midterm Exam # 1 Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Midterm Exam 1 When: Friday (09/28) 12:10-1pm Where:
More informationOptimization of Queries in Distributed Database Management System
Optimization of Queries in Distributed Database Management System Bhagvant Institute of Technology, Muzaffarnagar Abstract The query optimizer is widely considered to be the most important component of
More informationSDD Advanced-User Manual Version 1.1
SDD Advanced-User Manual Version 1.1 Arthur Choi and Adnan Darwiche Automated Reasoning Group Computer Science Department University of California, Los Angeles Email: sdd@cs.ucla.edu Download: http://reasoning.cs.ucla.edu/sdd
More informationADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT
ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT PhD Summary DOCTORATE OF PHILOSOPHY IN COMPUTER SCIENCE & ENGINEERING By Sandip Kumar Goyal (09-PhD-052) Under the Supervision
More informationQuery optimization in object-oriented database systems : the REVELATION project
Oregon Health & Science University OHSU Digital Commons CSETech July 1988 Query optimization in object-oriented database systems : the REVELATION project Goetz Graefe David Maier Follow this and additional
More informationFlowBack: Providing Backward Recovery for Workflow Management Systems
FlowBack: Providing Backward Recovery for Workflow Management Systems Bartek Kiepuszewski, Ralf Muhlberger, Maria E. Orlowska Distributed Systems Technology Centre Distributed Databases Unit ABSTRACT The
More information