SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
The ObjectStore database system
Communications of the ACM
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Practical prefetching via data compression
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Persistence software: bridging object-oriented programming and relational databases
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Composite-object views in relational DBMS: an implementation perspective
Information Systems - Special issue on extending database technology
A status report on the OO7 OODBMS benchmarking effort
OOPSLA '94 Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications
The object database standard: ODMG 2.0
The object database standard: ODMG 2.0
Inside COM
The Unified Modeling Language user guide
The Unified Modeling Language user guide
Designing OQL: allowing objects to be queried
Information Systems
Microsoft repository version 2 and the open information model
Information Systems - Special issue on meta-modelling and methodology engineering
Making smalltalk a database system
SIGMOD '84 Proceedings of the 1984 ACM SIGMOD international conference on Management of data
Efficiently instantiating view-objects from remote relational databases
The VLDB Journal — The International Journal on Very Large Data Bases
Outer Joins and Filters for Instantiating Objects from Relational Databases Through Views
IEEE Transactions on Knowledge and Data Engineering
SQL/XNF - Processing Composite Objects as Abstractions over Relational Data
Proceedings of the Ninth International Conference on Data Engineering
VLDB '97 Proceedings of the 23rd International Conference on Very Large Data Bases
Optimization of Run-time Management of Data Intensive Web-sites
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
Loading a Cache with Query Results
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
Fido: A Cache That Learns to Fetch
VLDB '91 Proceedings of the 17th International Conference on Very Large Data Bases
Accessing a Relational Database through an Object-Oriented Database Interface
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
A predicate-based caching scheme for client-server database architectures
The VLDB Journal — The International Journal on Very Large Data Bases
Using common Lisp to prototype offline work in web applications for rich domains
Proceedings of the 6th European Lisp Workshop
EDBT'04 Proceedings of the 2004 international conference on Current Trends in Database Technology
Hi-index | 0.00 |
When implementing persistent objects on a relational database, a major performance issue is prefetching data to minimize the number of round-trips to the database. This is especially hard with navigational applications, since future accesses are unpredictable. We propose the use of the context in which an object is loaded as a predictor of future accesses, where a context can be a stored collection of relationships, a query result, or a complex object. When an object O's state is loaded, similar state for other objects in O's context is prefetched. We present a design for maintaining context and for using it to guide prefetch. We give performance measurements of its implementation in Microsoft Repository, showing up to a 70% reduction in running time. We describe several variations of the optimization: selectively applying the technique based on application and database characteristics, using application-supplied performance hints, using concurrent database queries to support asynchronous prefetch, prefetching across relationship paths, and delayed prefetch to save database round-trips.