Abstract
The specific characteristics of graph workloads make it hard to design a one-size-fits-all graph storage system. Systems that support transactional updates use data structures with poor data locality, which limits the eciency of analytical workloads or even simple edge scans. Other systems run graph analytics workloads efficiently, but cannot properly support transactions. This paper presents LiveGraph, a graph storage system that outperforms both the best graph transactional systems and the best solutions for real-time graph analytics on fresh data. LiveGraph achieves this by ensuring that adjacency list scans, a key operation in graph workloads, are purely sequential: they never require random accesses even in presence of concurrent transactions. Such pure-sequential operations are enabled by combining a novel graph-aware data structure, the Transactional Edge Log (TEL), with a concurrency control mechanism that leverages TEL's data layout. Our evaluation shows that LiveGraph significantly outperforms state-of-the-art (graph) database solutions on both transactional and real-time analytical workloads.
Original language | English |
---|---|
Pages (from-to) | 1020-1034 |
Number of pages | 15 |
Journal | Proceedings of the VLDB Endowment |
Volume | 13 |
Issue number | 7 |
DOIs | |
Publication status | Published - 2020 |
Event | 46th International Conference on Very Large Data Bases, VLDB 2020 - Virtual, Japan Duration: 31 Aug 2020 → 4 Sept 2020 |