Skip to main content
QUICK REVIEW

[论文解读] Storing and Querying Large-Scale Spatio-Temporal Graphs with High-Throughput Edge Insertions

Mengsu Ding, Muqiao Yang|arXiv (Cornell University)|Apr 21, 2019
Data Management and Algorithms参考文献 30被引用 4
一句话总结

本文提出 PAST,一种用于高效存储和查询大规模时空图的分布式框架,支持高吞吐量的边插入。它采用基于对象顶点和时空索引的新型分区策略,最大限度减少跨机器通信,在查询性能方面相比当前最先进的系统(如 JanusGraph、Greenplum 和 ST-Hadoop)提升 1–4 个数量级。

ABSTRACT

Real-world graphs often contain spatio-temporal information and evolve over time. Compared with static graphs, spatio-temporal graphs have very different characteristics, presenting more significant challenges in data volume, data velocity, and query processing. In this paper, we describe three representative applications to understand the features of spatio-temporal graphs. Based on the commonalities of the applications, we define a formal spatio-temporal graph model, where a graph consists of location vertices, object vertices, and event edges. Then we discuss a set of design goals to meet the requirements of the applications: (i) supporting up to 10 billion object vertices, 10 million location vertices, and 100 trillion edges in the graph, (ii) supporting up to 1 trillion new edges that are streamed in daily, and (iii) minimizing cross-machine communication for query processing. We propose and evaluate PAST, a framework for efficient PArtitioning and query processing of Spatio-Temporal graphs. Experimental results show that PAST successfully achieves the above goals. It improves query performance by orders of magnitude compared with state-of-the-art solutions, including JanusGraph, Greenplum, Spark and ST-Hadoop.

研究动机与目标

  • 解决存储和查询高达 100 万亿条边、每天 1 万亿条边插入的超大规模时空图所面临的挑战。
  • 在分布式查询处理中最小化时空图的跨机器通信。
  • 支持对建模人员、对象和事件在时空维度上交互的图结构,实现实时、高速的数据摄入与复杂分析查询。
  • 设计一种可扩展、高效的框架,使其在存储与查询工作负载方面均优于现有系统(如 JanusGraph、Greenplum 和 ST-Hadoop)。

提出的方法

  • 提出一种形式化的二分图时空图模型,包含位置顶点、对象顶点和表示时空交互的事件边。
  • 采用中粒度哈希分区方案对对象顶点进行分区,以平衡数据分布并减少协调开销。
  • 在边数据上引入时空索引,利用时间和位置信息,实现查询处理过程中对无关数据的高效剪枝。
  • 设计基于协调器的负载均衡机制,根据工作节点利用率指标动态迁移顶点组。
  • 通过下推选择谓词和在本地计算中最小化节点间数据洗牌,优化查询执行。
  • 支持作为 RDBMS 之上的索引层集成,以加速混合关系型与图数据工作负载。

实验结果

研究问题

  • RQ1如何使分布式系统高效地存储和查询高达 100 万亿条边、每天 1 万亿条边插入的时空图?
  • RQ2何种分区策略可在大规模图处理中最小化跨机器通信,同时保持负载均衡?
  • RQ3如何通过时空索引减少复杂图查询过程中访问的数据量?
  • RQ4在真实工作负载中,自定义分区与索引框架在多大程度上优于通用图数据库与数据管理系统的性能?

主要发现

  • 在所有基准查询中,PAST 的查询性能相比 JanusGraph、Greenplum、Spark 和 ST-Hadoop 提升 1–4 个数量级。
  • 对于大时间范围查询(Q3 和 Q4),PAST 避免了系统过载,而 Cassandra+Spark 和 ST-Hadoop+Spark 因过度数据洗牌而崩溃。
  • Greenplum 在简单查询中表现良好,得益于基于对象的分区,但在需要全表扫描的复杂查询中性能显著下降。
  • PAST 中的时空索引将数据访问量减少了数个数量级,尤其在基于范围和相似度的查询中效果显著。
  • 通过组迁移实现的动态负载均衡在不同工作负载下维持了系统效率,协调器驱动的再平衡使节点利用率保持在平均值 ±5% 以内。
  • 初步评估表明,PAST 可扩展至存储高达 100 亿个对象顶点、1000 万个位置顶点和 1 万亿条边,满足真实应用场景的目标规模。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。