This paper introduces GTX, a standalone main-memory write-optimized graph data system that specializes in structural and graph property updates while enabling concurrent reads and graph analytics through ACID transactions. Recent graph systems target concurrent read and write support while guaranteeing transaction semantics. However, their performance suffers from updates with real-world temporal locality over the same vertices and edges due to vertex-centric lock contentions. GTX has an adaptive delta-chain locking protocol on top of a carefully designed latch-free graph storage. It eliminates vertex-level locking contention, and adapts to real-life workloads while maintaining sequential access to the graph's adjacency lists storage. GTX's transactions further support cache-friendly block level concurrency control, and cooperative group commit and garbage collection. This combination of features ensures high update throughput and provides low-latency graph analytics. Based on experimental evaluation, in addition to not sacrificing the performance of read-heavy analytical workloads, and having competitive performance similar to state-of-the-art systems, GTX has high read-write transaction throughput. For write-heavy transactional workloads, GTX achieves up to 11x better transaction throughput than the best-performing state-of-the-art system.
翻译:本文介绍了GTX,一种独立的、主内存优化的写优化图数据系统,专门处理结构和图属性更新,同时通过ACID事务支持并发读取和图分析。近期的图系统旨在支持并发读写,同时保证事务语义。然而,由于相同顶点和边上现实世界时间局部性的更新,这些系统的性能受到以顶点为中心的锁争用的影响。GTX在精心设计的无锁图存储之上,采用了一种自适应的增量链锁协议。它消除了顶点级锁争用,并适应现实工作负载,同时保持对图邻接表存储的顺序访问。GTX的事务进一步支持缓存友好的块级并发控制,以及协作组提交和垃圾回收。这些特性的结合确保了高更新吞吐量,并提供了低延迟的图分析。基于实验评估,GTX不仅不牺牲读密集型分析工作负载的性能,且具有与最先进系统相媲美的竞争力,还拥有高读写事务吞吐量。对于写密集型事务工作负载,GTX实现了比性能最佳的最先进系统高达11倍的事务吞吐量。