TARIS: Scalable Incremental Processing of Time-Respecting Algorithms on Streaming Graphs - Bhoot, Ruchi; Ghanmode, Suved Sanjay; Simmhan, Yogesh (IEEE transactions on parallel and distributed systems, 2024)
Temporal graphs change with time and have a lifespan associated with each vertex and edge. These graphs are suitable to process time-respecting algorithms where the traversed edges must have monotonic timestamps. Interval-centric Computing Model (ICM) is a distributed programming abstraction to design such temporal algorithms. There has been little work on supporting time-respecting algorithms at large scales for streaming graphs, which are updated continuously at high rates (Millions/s), such as in financial and social networks. In this article, we extend the windowed-variant of ICM for incremental computing over streaming graph updates. We formalize the properties of temporal graph algorithms and prove that our model of incremental computing over streaming updates is equivalent to batch execution of ICM. We design TARIS, a novel distributed graph platform that implements these incremental computing features. We use efficient data structures to reduce memory access and enhance locality during graph updates. We also propose scheduling strategies to interleave updates with computing, and streaming strategies to adapt the execution window for incremental computing to the variable input rates. Our detailed and rigorous evaluation of temporal algorithms on large-scale graphs with up to 2\,\text{B} 2B<inline-graphic xlink:href="bhoot-ieq1-3471574.gif"/> edges show that TARIS out-performs contemporary baselines, Tink and Gradoop, by 3-4 orders of magnitude, and handles a high input rate of 83k 83k<inline-graphic xlink:href="bhoot-ieq2-3471574.gif"/> - 587\,\text{M} 587M<inline-graphic xlink:href="bhoot-ieq3-3471574.gif"/> Mutations/s with latencies in the order of seconds-minutes.