Automatic Algorithm Transformation for Efficient Multi-Snapshot Analytics on Temporal Graphs
@article{Then2017AutomaticAT, title={Automatic Algorithm Transformation for Efficient Multi-Snapshot Analytics on Temporal Graphs}, author={Manuel Then and Timo Kersten and Stephan G{\"u}nnemann and Alfons Kemper and Thomas Neumann}, journal={Proc. VLDB Endow.}, year={2017}, volume={10}, pages={877-888} }
Analytical graph algorithms commonly compute metrics for a graph at one point in time. In practice it is often also of interest how metrics change over time, e.g., to find trends. For this purpose, algorithms must be executed for multiple graph snapshots.
We present Single Algorithm Multiple Snapshots (SAMS), a novel approach to execute algorithms concurrently for multiple graph snapshots. SAMS automatically transforms graph algorithms to leverage similarities between the analyzed graph…
23 Citations
Optimizing the interval-centric distributed computing model for temporal graph algorithms
- Computer ScienceEuroSys
- 2022
This work proposes local optimizations within a vertex execution by unrolling messages before TimeWarp (LU), and deferring messaging till all local computations complete (DS), and temporally partition the interval graph into windows (WICM) to flatten the execution load.
An Interval-centric Model for Distributed Computing over Temporal Graphs
- Computer Science2020 IEEE 36th International Conference on Data Engineering (ICDE)
- 2020
This work proposes an interval-centric computing model (ICM) for distributed and iterative processing of temporal graphs, where a vertex’s time-interval is a unit of data-parallel computation and introduces a unique time-warp operator for temporal partitioning and grouping of messages that hides the complexity of designing temporal algorithms.
GraphOne: A Data Store for Real-time Analytics on Evolving Graphs
- Computer ScienceFAST
- 2019
GraphOne is designed and developed, a graph data store that abstracts thegraph data store away from the specialized systems to solve the fundamental research problems associated with the data store design and presents a new data abstraction, GraphView, to enable data access at two different granularities of data ingestions.
SAGA-Bench: Software and Hardware Characterization of Streaming Graph Analytics Workloads
- Computer Science2020 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)
- 2020
This paper develops and open-source SAGA-Bench, a benchmark for streaming graph analytics, and performs workload characterization at the architecture level, revealing that the graph update phase exhibits lower utilization of architecture resources than the compute phase.
GraphOne
- Computer ScienceACM Transactions on Storage
- 2020
GraphOne is designed and developed, a graph data store that abstracts thegraph data store away from the specialized systems to solve the fundamental research problems associated with the data store design and presents a new data abstraction, GraphView, to enable data access at two different granularities of data ingestions.
Provably Efficient and Scalable Shared-Memory Graph Algorithms
- Computer Science
- 2019
A new graph-streaming system called Aspen is proposed, and it is shown that using Aspen, one can concurrently update and analyze the WebDataCommons hyperlink graph on a single commodity multicore machine with a terabyte of main memory.
Graphsurge
- Computer ScienceProceedings of the 2021 International Conference on Management of Data
- 2021
This paper presents the design and implementation of a new opensource view-based graph analytics system called Graphsurge, designed to support applications that analyze multiple snapshots or views of a large-scale graph, and presents two optimization problems that naturally arise in the setting.
Practice of Streaming and Dynamic Graphs: Concepts, Models, Systems, and Parallelism
- Computer ScienceArXiv
- 2019
This work provides the first analysis and taxonomy of dynamic and streaming graph processing, focusing on identifying the fundamental system designs and on understanding their support for concurrency and parallelism, and for different graph updates as well as analytics workloads.
Low-latency graph streaming using compressed purely-functional trees
- Computer SciencePLDI
- 2019
This paper designs theoretically-efficient and practical algorithms for performing batch updates to C-trees, and shows that it can store massive dynamic real-world graphs using only a few bytes per edge, thereby achieving space usage close to that of the best static graph processing frameworks.
Historical Graphs: Models, Storage, Processing
- Computer ScienceeBISS
- 2017
This chapter presents logical and physical models, query types, systems and algorithms for managing historical graphs, and highlights promising directions for future work.
References
SHOWING 1-10 OF 26 REFERENCES
Chronos: a graph engine for temporal graph analysis
- Computer ScienceEuroSys '14
- 2014
The result is a high-performance temporal-graph system that offers up to an order of magnitude speedup for temporal iterative graph mining compared to a straightforward application of existing graph engines on a series of snapshots.
The More the Merrier: Efficient Multi-Source Graph Traversal
- Computer ScienceProc. VLDB Endow.
- 2014
This paper proposes Multi-Source BFS, an algorithm that is designed to run multiple concurrent BFSs over the same graph on a single CPU core while scaling up as the number of cores increases, and demonstrates how a real graph analytics application---all-vertices closeness centrality---can be efficiently solved with MS-BFS.
Efficient snapshot retrieval over historical graph data
- Computer Science2013 IEEE 29th International Conference on Data Engineering (ICDE)
- 2013
An in-memory graph data structure called GraphPool that can maintain hundreds of historical graph instances in main memory in a non-redundant manner and develop analytical models for both the storage space needed and the snapshot retrieval times to aid in choosing the right construction parameters for a specific scenario.
GraphX: Graph Processing in a Distributed Dataflow Framework
- Computer ScienceOSDI
- 2014
This paper introduces GraphX, an embedded graph processing framework built on top of Apache Spark, a widely used distributed dataflow system and demonstrates that GraphX achieves an order of magnitude performance gain over the base dataflow framework and matches the performance of specialized graph processing systems while enabling a wider range of computation.
Pregel: a system for large-scale graph processing
- Computer ScienceSIGMOD Conference
- 2010
A model for processing large graphs that has been designed for efficient, scalable and fault-tolerant implementation on clusters of thousands of commodity computers, and its implied synchronicity makes reasoning about programs easier.
Ligra: a lightweight graph processing framework for shared memory
- Computer SciencePPoPP '13
- 2013
This paper presents a lightweight graph processing framework that is specific for shared-memory parallel/multicore machines, which makes graph traversal algorithms easy to write and significantly more efficient than previously reported results using graph frameworks on machines with many more cores.
LLAMA: Efficient graph analytics using Large Multiversioned Arrays
- Computer ScienceICDE
- 2015
The evaluation shows that LLAMA's mutability introduces modest overheads of 3–18% relative to immutable CSR for in-memory execution and that it outperforms state- of-the-art out-of-memory systems in most cases, with a best case improvement of 5x on breadth-first-search.
Green-Marl: a DSL for easy and efficient graph analysis
- Computer ScienceASPLOS XVII
- 2012
This paper describes Green-Marl, a domain-specific language (DSL) whose high level language constructs allow developers to describe their graph analysis algorithms intuitively, but expose the data-level parallelism inherent in the algorithms.
Thinking Like a Vertex
- Computer ScienceACM Comput. Surv.
- 2015
In this survey, the vertex-centric approach to graph processing is overviewed, TLAV frameworks are deconstructed into four main components and respectively analyzed, and TLAV implementations are reviewed and categorized.
Path Problems in Temporal Graphs
- Computer ScienceProc. VLDB Endow.
- 2014
The shortcomings of classic shortest path in a temporal graph are shown, various concepts of "shortest" path for temporal graphs are studied, and efficient algorithms to compute these temporal paths are proposed.