Encapsulation of parallelism in the Volcano query processing system
- 1 May 1990
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGMOD Record
- Vol. 19 (2), 102-111
- https://doi.org/10.1145/93605.98720
Abstract
Volcano is a new dataflow query processing system we have developed for database systems research and education. The uniform interface between operators makes Volcano extensible by new operators. All operators are designed and coded as if they were meant for a single-process system only. When attempting to parallelize Volcano, we had to choose between two models of parallelization, called here the bracket and operator models. We describe the reasons for not choosing the bracket model, introduce the novel operator model, and provide details of Volcano's exchange operator that parallelizes all other operators. It allows intra-operator parallelism on partitioned datasets and both vertical and horizontal inter-operator parallelism. The exchange operator encapsulates all parallelism issues and therefore makes implementation of parallel database algorithms significantly easier and more robust. Included in this encapsulation is the translation between demand-driven dataflow within processes and data-driven dataflow between processes. Since the interface between Volcano operators is similar to the one used in “real,” commercial systems, the techniques described here can be used to parallelize other query processing engines.Keywords
This publication has 5 references indexed in Scilit:
- The Gamma database machine projectIEEE Transactions on Knowledge and Data Engineering, 1990
- Design and implementation of the wisconsin storage systemSoftware: Practice and Experience, 1985
- Parallel algorithms for the execution of relational database operationsACM Transactions on Database Systems, 1983
- The design and implementation of INGRESACM Transactions on Database Systems, 1976
- System RACM Transactions on Database Systems, 1976