Abstract
The graph data keep growing over time in real life. The ever-growing amount of dynamic graph data demands efficient techniques of incremental graph computation. However, incremental graph algorithms are challenging to develop. Existing approaches usually require users to manually design nontrivial incremental operators, or choose different memoization strategies for certain specific types of computation, limiting the usability and generality. In light of these challenges, we propose Ingress, an automated system for incremental graph processing. Ingress is able to deduce the incremental counterpart of a batch vertex-centric algorithm, without the need of redesigned logic or data structures from users. Underlying Ingress is an automated incrementalization framework equipped with four different memoization policies, to support all kinds of vertex-centric computations with optimized memory utilization. We identify sufficient conditions for the applicability of these policies. Ingress chooses the best-fit policy for a given algorithm automatically by verifying these conditions. In addition to the ease-of-use and generalization, Ingress outperforms state-of-the-art incremental graph systems by 12.14X on average (up to 49.23X) in efficiency.
| Original language | English |
|---|---|
| Pages (from-to) | 781-806 |
| Number of pages | 26 |
| Journal | The VLDB Journal |
| Volume | 33 |
| Issue number | 3 |
| Early online date | 20 Feb 2024 |
| DOIs | |
| Publication status | Published - May 2024 |
| Externally published | Yes |
Keywords
- incrementalization
- flexible memoization
- graph computing systems