5780278
A Status Report on the oo7 OODBMS Benchmarking Effort
The OO7 Benchmark was first published in 1993, and has since found a home in the marketing literature of various object-oriented database management system (OODBMS) vendors. The OO7 Benchmark (as published) was the initial result of an ongoing OODBMS performance evaluation effort at the University of Wisconsin. This paper provides an update on the status of the effort on two fronts: single-user and multi-user. On the single-user front, we review and critique the design of the initial OO7 Benchmark. We discuss some of its faults, the reasons for those faults, and things that might be done to correct them. On the multi-user front, we describe our current work on the development of a multi-user benchmark for OODBMSs. This effort includes changes and extensions to the OO7 database and the design of a family of interesting multi-user workloads.
6221317
Client-Server Caching Revisited
The caching of data and/or locks at client workstations is an eeective technique for improving the performance of a client-server database system. This paper extends an earlier performance study of client-server caching in several ways. The rst is a re-examination of heuristics for deciding dynamically between propagating changes or invalidating remote copies of data pages in order to maintain cache consistency. The second is a study of the \Callback Locking" family of caching algorithms. These algorithms are of interest because they provide an alternative to the optimistic techniques used in the earlier study and because they have recently begun to nd use in commercial systems. In addition, the performance of the caching algorithms is examined in light of current trends in processor and network speeds and in the presence of data contention.
5180721
Towards Automated Performance Tuning for Complex Workloads
In this paper we explore the problem of automatically adjusting DBMS multiprogramming levels and memory allocations in order to achieve a set of per-class msponse time goals for a complex multiclass wotkload. We start by describing the phenomena that make this a very challenging problem, the foremost of which is the interdependence between classes that results from their competition for shared tesources. We then describe M&M, a feedback-based algorithm for determining the MPL and memory settings for each class independently, and we evaluate the algorithm’s effectiveness using a detailed simulation model. We show that our algorithm can successfully achieve response times that are within a few percent of the goals for mixed workloads consisting of shott transactions and longer-running ad hoc join queries.
16172316
Extending SQL-92 for OODB access: design and implementation experience
This paper describes the design and implementation of a query engine that provides extended SQL-based access to the data managed by an object-oriented database system. This query engine allows extended SQL queries to be embedded in C++ programs or issued interactively as from a command line interface. The language supported by the engine is the complete SQL-92 select statement plus object extensions for navigating along paths and embedded structures, querying nested sets, and invoking member functions. In addition, an object-oriented SQL view facility is provided. Using this view facility, one can define object-oriented views; one can also define views that flatten complex OODB schemas, allowing direct access by existing tools designed to provide remote access to relational databases. The view facility also supports the definition of views that include reference and set-valued columns based on other views, thus allowing entire "view schemas" to be created. This paper describes the SQL-92 query and view extensions and discusses a number of issues that arose on the way to the implementation that is currently running on top of the ObjectStore OODB system.
31679743
Making Real Data Persistent: Initial Experiences with SMRC
The Shared Memory-Resident Cache (SMRC) facility under development at IBM Almaden enables persistent C++ data structures to reside in a relational database by utilizing its binary large object (BLOB) facilities. Through SMRC, persistent C++ data then can be accessed both programmatically and through relational queries. Testing and refinement of the SMRC persistence facility has been driven by the early adoption of a challenging application, “graphical explain,” which provides support for the storage and visualization of optimized relational query plans. The purpose of this paper is to report on our early experiences with this application, as it has been enlightening with respect to the sorts of C++ data structures and programming practices that must be dealt with in order to make “reap’ C++ data persistent.
9500647
Querying Multimedia Data from Multiple Repositories by Content: the Garlic Project
We describe Garlic, an object-oriented multimedia middleware query system. Garlic enables existing data management components, such as a relational database or a full text search engine, to be integrated into an extensible information management system that presents a common interface and user access tools. We focus in this paper on how QBIC, an image retrieval system that provides content-based image queries, can be integrated into Garlic. This results in a system in which a single query can combine visual and nonvisual data using type-specific search techniques, enabling a new breed of multimedia applications
16894136
Query processing in main memory database management systems
Most previous work in the area of main memory database systems has focused on the problem of developing query processing techniques that work well with a very large buffer pool. In this paper, we address query processing issues for memory resident relational databases, an environment with a very different set of costs and priorities. We present an architecture for a main memory DBMS, discussing the ways in which a memory resident database differs from a disk-based database. We then address the problem of processing relational queries in this architecture, considering alternative algorithms for selection, projection, and join operations and studying their performance. We show that a new index structure, the T Tree, works well for selection and join processing in memory resident databases. We also show that hashing methods work well for processing projections and joins, and that an old join method, sort-merge, still has a place in main memory.
28682270
Extending and solving a multiperiod congested network flow model
Abstract We consider an existing model for optimizing time-varying flows on a congested network, and extend it so as to improve its accuracy while reducing computation. The model has been developed in a series of articles and has a variety of applications. Solving the model is a significant problem, since it is a non-linear program and can be very large for even small or medium size applications. Hitherto the model has been solved by taking a piecewise linear approximation and solving this as a linear program, perhaps taking advantage of the staircase structure of the constraints. However, this staircase is not available in the extended model. Further, the existing solution methods do not take advantage of the network structure of the problem. Here we show that a piecewise linear version of the model can be stated as a pure processing network (PPN); this allows algorithms for PPNs to be used to solve the model. We also propose a penalty (or barrier) function solution method. This reduces the problem to successively reoptimizing a program equivalent to the well-known static traffic assignment model. The latter is a convex cost, linearly constrained, un capacitated network flow problem. The above solution methods apply both to the basic model and the extended model.