RisGraph:一个支持亚毫秒级百万次更新分析的实时的图形演化流系统
RisGraph: A Real-Time Streaming System for Evolving Graphs to Support Sub-millisecond Per-update Analysis at Millions Ops/s
摘要:
现实世界中不断发展的图形是大规模的,并且不断变化,因为每秒可能会有数十万次更新。单调算法(如可达性和最短路径)广泛用于实时的【形】分析,以获得静态和时间洞察,并可以通过增量计算来加速。现有的流媒体系统采用增量计算模型,并实现低延迟或高吞吐量,但不能两者兼而有之。然而,在诸如金融欺诈检测的实际场景中,需要高吞吐量和低延迟。本文介绍了RisGraph,一个实时的【形】流媒体系统,提供低延迟分析的每一个更新,高吞吐量。RisGraph通过本地化数据访问和更新间并行性解决了这一挑战。我们提出了一种名为索引邻接表的数据结构,并使用稀疏数组和混合并行模式来实现本地化数据访问。为了实现更新间的并行性,我们提出了一个特定领域的并发控制机制的基础上的安全和不安全的更新分类。实验表明,对于具有数亿个顶点和数十亿条边的图,RisGraph每秒可以摄取数百万次更新,P999处理时间延迟在20毫秒以内。RisGraph在每次更新都执行分析而不进行重复测试时,吞吐量实现了数量级的提高,并且比现有系统的性能更好,批量更新高达2000万次。
英文摘要:
Evolving graphs in the real world are large-scale and constantly changing, as hundreds of thousands of updates may come every second. Monotonic algorithms such as Reachability and Shortest Path are widely used in real-time analytics to gain both static and temporal insights and can be accelerated by incremental computing. Existing streaming systems adopt the incremental computing model and achieve either low latency or high throughput, but not both. However, both high throughput and low latency are required in real scenarios such as financial fraud detection. This paper presents RisGraph, a real-time streaming system that provides low-latency analysis for each update with high throughput. RisGraph addresses the challenge with localized data access and inter-update parallelism. We propose a data structure named Indexed Adjacency Lists and use sparse arrays and Hybrid Parallel Mode to enable localized data access. To achieve inter-update parallelism, we propose a domain-specific concurrency control mechanism based on the classification of safe and unsafe updates. Experiments show that RisGraph can ingest millions of updates per second for graphs with several hundred million vertices and billions of edges, and the P999 processing time latency is within 20 milliseconds. RisGraph achieves orders-of-magnitude improvement on throughput when analyses are executed for each update without batching and performs better than existing systems with batches of up to 20 million updates.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。