Parallelizing the Volcano database query processor

Goetz Graefe · 2002

Volcano is a new data flow query processing system developed for database systems research and education. All operators are designed and coded as if they were meant for a single-process system only. The design implementation of Volcano's exchange operator that parallelizes all other operators is described. It allows intraoperator parallelism on partitioned data assets and both vertical and horizontal interoperator 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 data flow within processes and data-driven data flow between processes. In order to evaluate the efficiency of Volcano's exchange operator, parallel sorting was implemented by combining Volcano's single-process sort iterator with the exchange iterator. The measurements demonstrate that parallelizing an existing single-process query evaluation engine can be accomplished effectively using Volcano's exchange operator.>

Read the paper · More papers on PaperTik