PermJoin: An Efficient Algorithm for Producing Early Results in Multi-join Query Plans

  • Authors:
  • Justin J. Levandoski;Mohamed E. Khalefa;Mohamed F. Mokbel

  • Affiliations:
  • Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA. justin@cs.umn.edu;Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA. khalefa@cs.umn.edu;Department of Computer Science and Engineering, University of Minnesota, Minneapolis, MN, USA. mokbel@cs.umn.edu

  • Venue:
  • ICDE '08 Proceedings of the 2008 IEEE 24th International Conference on Data Engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces an efficient algorithm for Producing Early Results in Multi-join query plans (PermJoin, for short). While most previous research focuses only on the case of a single join operator, PermJoin takes a radical step by addressing query plans with multiple join operators. PermJoin is optimized to maximize the early overall throughput and to adapt to fluctuations in data arrival rates. PermJoin is a non-blocking operator that is capable of producing join results even if one or more data sources are blocked due to slow or bursty network behavior. Furthermore, PermJoin distinguishes itself from all previous techniques as it: (1) employs a new flushing policy to write in-memory data to disk, once memory allotment is exhausted, in a way that helps increase the probability of producing early result throughput in multi-join queries, and (2) employs a novel state manager module that adaptively switches operators between joining in-memory data and disk-resident data in order to maximize overall throughput.