Even Faster Geosocial Reachability Queries
Rick van der Heijden, Nikolay Yakovets, Thekla Hamm
TL;DR
RangeReach on geosocial graphs is addressed by 2DReach, which eliminates interval labelling and uses a per-component 2D R-tree to store reachable spatial vertices within the SCC DAG. This design yields faster index construction and, especially in compressed variants, smaller index sizes while delivering competitive and stable query performance across diverse workloads. Compared with the state-of-the-art 3DReach, 2DReach reduces indexing complexity and simplifies queries, with 2DReach-Pointer achieving the smallest index footprint among variants. The approach demonstrates practical impact for scalable geosocial reachability queries on large Location-Based Social Networks, with potential extension to other spatial-graph domains and enhancements in R-tree sharing.
Abstract
Geosocial reachability queries (\textsc{RangeReach}) determine whether a given vertex in a geosocial network can reach any spatial vertex within a query region. The state-of-the-art 3DReach method answers such queries by encoding graph reachability through interval labelling and indexing spatial vertices in a 3D R-tree. We present 2DReach, a simpler approach that avoids interval labelling entirely. Like 3DReach, 2DReach collapses strongly connected components (SCCs) into a DAG, but instead of computing interval labels, it directly stores a 2D R-tree per component over all reachable spatial vertices. A query then reduces to a single 2D R-tree lookup. We further propose compressed variants that reduce storage by excluding spatial sinks and sharing R-trees between components with identical reachable sets. Experiments on four real-world datasets show that 2DReach achieves faster index construction than 3DReach, with the compressed variant yielding the smallest index size among all methods. 2DReach delivers competitive or superior query performance with more stable response times across varying query parameters.
