Using state modules for adaptive query processing

TitleUsing state modules for adaptive query processing
Publication TypeConference Papers
Year of Publication2003
AuthorsRaman V, Deshpande A, Hellerstein JM
Conference Name19th International Conference on Data Engineering, 2003. Proceedings
Date Published2003/03/05/8
ISBN Number0-7803-7665-X
Keywordsadaptive query processing, Bandwidth, Calibration, data encapsulation, data structure, Data structures, Databases, Dictionaries, eddy routing, eddy routing operator, Encapsulation, join operator, multiple algorithm automatic hybridization, multiple competing join algorithm, query architecture, Query processing, query spanning tree, Routing, routing policy, Runtime, shared materialization point, State Module, SteMs, Telegraph dataflow system, Telegraphy, Tree data structures

We present a query architecture in which join operators are decomposed into their constituent data structures (State Modules, or SteMs), and dataflow among these SteMs is managed adaptively by an eddy routing operator [R. Avnur et al., (2000)]. Breaking the encapsulation of joins serves two purposes. First, it allows the eddy to observe multiple physical operations embedded in a join algorithm, allowing for better calibration and control of these operations. Second, the SteM on a relation serves as a shared materialization point, enabling multiple competing access methods to share results, which can be leveraged by multiple competing join algorithms. Our architecture extends prior work significantly, allowing continuously adaptive decisions for most major aspects of traditional query optimization: choice of access methods and join algorithms, ordering of operators, and choice of a query spanning tree. SteMs introduce significant routing flexibility to the eddy, enabling more opportunities for adaptation, but also introducing the possibility of incorrect query results. We present constraints on eddy routing through SteMs that ensure correctness while preserving a great deal of flexibility. We also demonstrate the benefits of our architecture via experiments in the Telegraph dataflow system. We show that even a simple routing policy allows significant flexibility in adaptation, including novel effects like automatic "hybridization " of multiple algorithms for a single join.