Qd-tree: Learning Data Layouts for Big Data Analytics
Zongheng Yang, Badrish Chandramouli, Chi Wang, Johannes Gehrke, Yinan Li, Umar Farooq Minhas, Per-Åke Larson, Donald Kossmann, Rajeev Acharya
Abstract
Corporations today collect data at an unprecedented and accelerating scale, making the need to run queries on large datasets increasingly important. Technologies such as columnar block-based data organization and compression have become standard practice in most commercial database systems. However, the problem of best assigning records to data blocks on storage is still open. For example, today's systems usually partition data by arrival time into row groups, or range/hash partition the data based on selected fields. For a given workload, however, such techniques are unable to optimize for the important metric of the number of blocks accessed by a query. This metric directly relates to the I/O cost, and therefore performance, of most analytical queries. Further, they are unable to exploit additional available storage to drive this metric down further. In this paper, we propose a new framework called a query-data routing tree, or qd-tree, to address this problem, and propose two algorithms for their construction based on greedy and deep reinforcement learning techniques. Experiments over benchmark and real workloads show that a qd-tree can provide physical speedups of more than an order of magnitude compared to current blocking schemes, and can reach within 2X of the lower bound for data skipping based on selectivity, while providing complete semantic descriptions of created blocks.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext e26b06b9-6e26-4956-b9cf-be564f91feb7Cited by top-tier papers40
- ALEX: An Updatable Adaptive Learned IndexJialin Ding, Umar Farooq Minhas, Jia Yu, Chi Wang et al.SIGMOD 2020 · 274 citations
- Tsunami: A Learned Multi-dimensional Index for Correlated Data and Skewed WorkloadsJialin Ding, Vikram Nathan, Mohammad Alizadeh, Tim KraskaVLDB 2021 · 178 citations
- Updatable Learned Index with Precise PositionsJiacheng Wu, Yong Zhang, Shimin Chen, Yu Chen et al.VLDB 2021 · 160 citations
- NeuroCard: One Cardinality Estimator for All TablesZongheng Yang, Amog Kamsetty, Sifei Luan, Eric Liang et al.VLDB 2021 · 138 citations
- Effectively Learning Spatial IndicesJianzhong Qi, Guanli Liu, Christian S. Jensen, Lars KulikVLDB 2020 · 121 citations
Builds on3
- ALEX: An Updatable Adaptive Learned IndexJialin Ding, Umar Farooq Minhas, Jia Yu, Chi Wang et al.SIGMOD 2020 · 274 citations
- Deep Unsupervised Cardinality EstimationZongheng Yang, Eric Liang, Amog Kamsetty, Chenggang Wu et al.VLDB 2020 · 206 citations
- Learning Multi-Dimensional IndexesVikram Nathan, Jialin Ding, Mohammad Alizadeh, Tim KraskaSIGMOD 2020 · 180 citations
Related papers
- The RLR-Tree: A Reinforcement Learning Based R-Tree for Spatial DataTu Gu, Kaiyu Feng, Gao Cong, Cheng Long et al.SIGMOD 2023 · 62 citations
- DBA bandits: Self-driving index tuning under ad-hoc, analytical workloads with safety guaranteesR. Malinga Perera, Bastian Oetomo, Benjamin I. P. Rubinstein, Renata Borovica-GajicICDE 2021 · 40 citations
- Grep: A Graph Learning Based Database Partitioning SystemXuanhe Zhou, Guoliang Li, Jianhua Feng, Luyang Liu et al.SIGMOD 2023 · 14 citations
- Budget-aware Index Tuning with Reinforcement LearningWentao Wu, Chi Wang, Tarique Siddiqui, Junxiong Wang et al.SIGMOD 2022 · 33 citations
- Learning a Partitioning Advisor for Cloud DatabasesBenjamin Hilprecht, Carsten Binnig, Uwe RöhmSIGMOD 2020 · 64 citations
