Skip to Main Content
Facing today's information flood needs efficient means for personalization. Therefore XML query processing over large volumes of data needs to make the most out of already spent processing time by caching common (sub)expressions for reuse. This is especially promising for the new paradigm of personalized preference queries. Here a sequence of possible query relaxations is a-priori determined by the users' preferences. Structural and value-based preferences thus define a query process where predicates are progressively relaxed until a suitable set of best possible results has been retrieved. To improve evaluation times for such query processes we argue that caching intermediate join results of structural preference queries is especially effective, because subsequent queries will always be subsumed by some previously cached queries to a certain extent. In this paper we propose a structural join-based caching scheme that allows preference queries to reuse the most beneficial structural join results of all previous queries. We first design a twig cache along with effective strategies for cache management. Moreover, we present a selection algorithm for join orders using cached data and the preference-induced sequence of future queries to select optimal query evaluation plans. Our benchmark experiments show that by using our twig caches preference query processing can be essentially sped up.