Learning Z-Order Indexes with Dynamic Bit Allocation

The Z-order curve is a space-filling curve that maps multi-dimensional data to singledimensional values. Z-order has been used in databases to sort multi-dimensional data. Modern data management systems such as Amazon Redshift and Databricks Delta Lake give users the ability to sort on multiple colu...

Full description

Bibliographic Details
Main Author: Gao, Jenny
Other Authors: Madden, Samuel
Format: Thesis
Published: Massachusetts Institute of Technology 2023
Online Access:https://hdl.handle.net/1721.1/150189
_version_ 1811068914198642688
author Gao, Jenny
author2 Madden, Samuel
author_facet Madden, Samuel
Gao, Jenny
author_sort Gao, Jenny
collection MIT
description The Z-order curve is a space-filling curve that maps multi-dimensional data to singledimensional values. Z-order has been used in databases to sort multi-dimensional data. Modern data management systems such as Amazon Redshift and Databricks Delta Lake give users the ability to sort on multiple columns using Z-order. However, the Z-order is difficult to tune, with tunable parameters such as which columns to include in the Z-order. Currently, users must specify the columns for Z-order when using the systems and might not necessarily achieve the best performance, as the choice of columns has a significant impact on performance. Another drawback is that the systems give equal weight to the columns, which often does not result in the best performance due to the unequal impact columns have on query performance. Our work aims to automatically determine the best Z-order configuration for a particular dataset and workload. In this thesis, we introduce learning Z-order indexes using an approach we refer to as dynamic bit allocation, which considers not only which columns to include, but also the weight to put on each column. Our learned Z-order indexes outperform existing techniques by up to 11× in query time and up to 30.2× in rows scanned, revealing the potential of tuning Z-order to improve query performance.
first_indexed 2024-09-23T08:02:48Z
format Thesis
id mit-1721.1/150189
institution Massachusetts Institute of Technology
last_indexed 2024-09-23T08:02:48Z
publishDate 2023
publisher Massachusetts Institute of Technology
record_format dspace
spelling mit-1721.1/1501892023-04-01T04:06:10Z Learning Z-Order Indexes with Dynamic Bit Allocation Gao, Jenny Madden, Samuel Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science The Z-order curve is a space-filling curve that maps multi-dimensional data to singledimensional values. Z-order has been used in databases to sort multi-dimensional data. Modern data management systems such as Amazon Redshift and Databricks Delta Lake give users the ability to sort on multiple columns using Z-order. However, the Z-order is difficult to tune, with tunable parameters such as which columns to include in the Z-order. Currently, users must specify the columns for Z-order when using the systems and might not necessarily achieve the best performance, as the choice of columns has a significant impact on performance. Another drawback is that the systems give equal weight to the columns, which often does not result in the best performance due to the unequal impact columns have on query performance. Our work aims to automatically determine the best Z-order configuration for a particular dataset and workload. In this thesis, we introduce learning Z-order indexes using an approach we refer to as dynamic bit allocation, which considers not only which columns to include, but also the weight to put on each column. Our learned Z-order indexes outperform existing techniques by up to 11× in query time and up to 30.2× in rows scanned, revealing the potential of tuning Z-order to improve query performance. M.Eng. 2023-03-31T14:38:32Z 2023-03-31T14:38:32Z 2023-02 2023-02-27T18:43:26.907Z Thesis https://hdl.handle.net/1721.1/150189 In Copyright - Educational Use Permitted Copyright MIT http://rightsstatements.org/page/InC-EDU/1.0/ application/pdf Massachusetts Institute of Technology
spellingShingle Gao, Jenny
Learning Z-Order Indexes with Dynamic Bit Allocation
title Learning Z-Order Indexes with Dynamic Bit Allocation
title_full Learning Z-Order Indexes with Dynamic Bit Allocation
title_fullStr Learning Z-Order Indexes with Dynamic Bit Allocation
title_full_unstemmed Learning Z-Order Indexes with Dynamic Bit Allocation
title_short Learning Z-Order Indexes with Dynamic Bit Allocation
title_sort learning z order indexes with dynamic bit allocation
url https://hdl.handle.net/1721.1/150189
work_keys_str_mv AT gaojenny learningzorderindexeswithdynamicbitallocation