Columnstore and B+ tree - Are Hybrid Physical Designs Important?
Adam Dziedzic (University of Chicago)
Commercial DBMSs, such as Microsoft SQL Server, cater to diverse workloads including transaction processing, decision support, and operational analytics. They also support variety in physical design structures such as B+ tree and columnstore. The benefits of B+ tree for OLTP workloads and columnstore for decision support workloads are well-understood. However, the importance of hybrid physical designs, consisting of both columnstore and B+ tree indexes on the same database, is not well-studied. We first quantify the trade-offs using carefully-crafted micro-benchmarks. This micro-benchmarking indicates that hybrid physical designs can result in orders of magnitude better performance depending on the workload. For complex real-world applications, choosing an appropriate combination of columnstore and B+ tree indexes for a database workload is challenging. We extend the Database Engine Tuning Advisor for Microsoft SQL Server to recommend a suitable combination of B+ tree and columnstore indexes for a given workload. Through extensive experiments using industry-standard benchmarks and several real-world customer workloads, we quantify how a physical design tool capable of recommending hybrid physical designs can result in orders of magnitude better execution costs compared to approaches that rely either on columnstore-only or B+ tree-only designs. At the end of the talk, we will briefly discuss our current research on FFT-based compression for Convolutional Neural Networks.
About the speaker
Adam Dziedzic is a 4th year PhD student at the University of Chicago, Department of Computer Science, where he is advised by Prof. Aaron Elmore and Prof. Sanjay Krishnan. Adam's research centers on data analysis and databases. He worked on data loading at EPFL (DIAS group) and data migration between diverse database systems in the framework of the BigDAWG system. Adam has interned at Microsoft Research at the DMX group, where he was advised by Vivek Narasayya and Sudipto Das, and at Google, where his mentor was Goetz Graefe. He worked on the analysis and recommendation of hybrid physical designs for SQL Server and on the elimination of performance cliffs in the F1 system. His current research involves building the DeepLens system for visual analytics and optimizing GPU memory usage for FFT based convolution in CNNs.