Parallel Dynamic Spatial Indexes
Ziyang Men, Bo Huang, Yan Gu, Yihan Sun
TL;DR
This work tackles the challenge of dynamic spatial data by developing parallel index structures optimized for batch updates. It introduces two data-structure families, the P-Orth tree and the SPaC-tree, implemented in PSI-Lib, to achieve high-throughput updates while preserving strong query performance. The P-Orth tree avoids space-filling curves and relies on a batch-friendly sieving strategy, whereas the SPaC-tree uses a partial-leaf-order design built atop PaC-trees to enable fast updates with near-PaC-tree query quality. The authors provide rigorous theoretical bounds and comprehensive experiments on synthetic and real-world data, showing superior update performance and competitive queries, and release the library for public use. The work advances practical parallel spatial indexing for highly dynamic workloads in GIS, graphics, and robotics contexts.
Abstract
Maintaining spatial data (points in two or three dimensions) is crucial and has a wide range of applications, such as graphics, GIS, and robotics. To handle spatial data, many data structures, called spatial indexes, have been proposed, e.g. kd-trees, oct/quadtrees (also called Orth-trees), R-trees, and bounding volume hierarchies (BVHs). In real-world applications, spatial datasets tend to be highly dynamic, requiring batch updates of points with low latency. This calls for efficient parallel batch updates on spatial indexes. Unfortunately, there is very little work that achieves this. In this paper, we systematically study parallel spatial indexes, with a special focus on achieving high-performance update performance for highly dynamic workloads. We select two types of spatial indexes that are considered optimized for low-latency updates: Orth-tree and R-tree/BVH. We propose two data structures: the P-Orth tree, a parallel Orth-tree, and the SPaC-tree family, a parallel R-tree/BVH. Both the P-Orth tree and the SPaC-tree deliver superior performance in batch updates compared to existing parallel kd-trees and Orth-trees, while preserving better or competitive query performance relative to their corresponding Orth-tree and R-tree counterparts. We also present comprehensive experiments comparing the performance of various parallel spatial indexes and share our findings at the end of the paper.
