Implementing Memoization in a Streaming XQuery Processor
- Cite this paper as:
- Diao Y., Florescu D., Kossmann D., Carey M.J., Franklin M.J. (2004) Implementing Memoization in a Streaming XQuery Processor. In: Bellahsène Z., Milo T., Rys M., Suciu D., Unland R. (eds) Database and XML Technologies. XSym 2004. Lecture Notes in Computer Science, vol 3186. Springer, Berlin, Heidelberg
In this paper, we describe an approach to boosting the performance of an XQuery engine by identifying and exploiting opportunities to share processing both within and across XML queries. We first explain where sharing opportunities arise in the world of XML query processing. We then describe an approach to shared XQuery processing based on memoization, providing details of an implementation that we built by extending the streaming XQuery processor that BEA Systems incorporates as part of their BEA WebLogic Integration 8.1 product. To explore the potential performance gains offered by our approach, we present results from an experimental study of its performance over a collection of use-case-inspired synthetic query workloads. The performance results show that significant overall gains are indeed available.
Unable to display preview. Download preview PDF.