Multiple query optimization in middleware using query teamwork

Kevin O'Gorman, A. El Abbadi, D. Agrawal

Research output: Contribution to journalArticle

6 Citations (Scopus)


Multiple concurrent queries occur in many database settings. This paper describes the use of middleware as an optimization tool for such queries. Since common subexpressions derive from common data and the data is usually greatest at the source, the middleware exploits the presence of sharable access patterns to underlying data, especially scans of large portions of tables or indexes, in environments where query queuing or batching is an acceptable approach. The results show that simultaneous queries with such sharable accesses have a tendency to form synchronous groups (teams) which benefit each other through the operation of the disk cache, in effect using it as an implicit pipeline. The middleware exploits this tendency by queuing and scheduling the queries to promote this interaction, using an algorithm designed to promote such teamwork. This is implemented as middleware for use with a commercial database engine. The results include tests using the query mix from the TPC Benchmark™R, achieving a speed-up of 2.34 over the default scheduling provided by one database. Other results show that the success depends on the details of the computing environment.

Original languageEnglish
Pages (from-to)361-391
Number of pages31
JournalSoftware - Practice and Experience
Issue number4
Publication statusPublished - 10 Apr 2005



  • Middleware
  • Multiple query optimization
  • Query teamwork

ASJC Scopus subject areas

  • Software

Cite this