MiniTasking: improving cache performance for multiple query workloads

  • Authors:
  • Yan Zhang;Zhifeng Chen;Yuanyuan Zhou

  • Affiliations:
  • National laboratory on machine perception, Peking Univ., Beijing, China;Google;Department of Computer Science, University of Illinois at Urbana-Champaign

  • Venue:
  • WAIM '06 Proceedings of the 7th international conference on Advances in Web-Age Information Management
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper proposes a novel idea, called MiniTasking to reduce the number of cache misses by improving the data temporal locality for multiple concurrent queries. Our idea is based on the observation that, in many workloads such as decision support systems (DSS), there is usually significant amount of data sharing among different concurrent queries. MiniTasking exploits such data sharing characteristics to improve data temporal locality by scheduling query execution at three levels: (1) It batches queries based on their data sharing characteristics and the cache configuration. (2) It groups operators that share certain data. (3) It schedules mini-tasks which are small pieces of computation in operator groups according to their data locality without violating their execution dependencies. Our experimental results show that, MiniTasking can significantly reduce the execution time up to 12% for joins. For the TPC-H throughput test workload, MiniTasking improves the end performance up to 20%. Even with the Partition Attributes Across (PAX) layout, MiniTasking further reduces the cache misses by 65% and the execution time by 9%.