Context-based prefetch - an optimization for implementing objects on relations

Citation
Pa. Bernstein et al., Context-based prefetch - an optimization for implementing objects on relations, VLDB J, 9(3), 2000, pp. 177-189
Citations number
28
Categorie Soggetti
Computer Science & Engineering
Journal title
VLDB JOURNAL
ISSN journal
10668888 → ACNP
Volume
9
Issue
3
Year of publication
2000
Pages
177 - 189
Database
ISI
SICI code
1066-8888(200012)9:3<177:CP-AOF>2.0.ZU;2-Z
Abstract
When implementing persistent objects on a relational database, a major perf ormance 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 wh ich 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 o bject. 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 a nd for using it to guide prefetch. We give performance measurements of its implementation in Microsoft Repository, showing up to a 70% reduction in ru nning 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 que ries to support asynchronous prefetch, prefetching across relationship path s, and delayed prefetch to save database round-trips.