Plato高性能图计算框架

联合创作 · 2023-10-01 07:19

简介

Plato 高性能图计算框架主要有以下贡献:

  • Plato 能高效地支撑腾讯超大规模社交网络图数据的各类计算,且性能达到了学术界和工业界的顶尖水平,比Spark GraphX 高出 1-2 个数量级,使得许多按天计算的算法可在小时甚至分钟级别完成,也意味着腾讯图计算全面进入了分钟级时代。
  • Plato 的内存消耗比 Spark GraphX 减少了 1-2 个数量级,意味着只需中小规模的集群(10 台服务器左右)即可完成腾讯数据量级的超大规模图计算,打破了动辄需要上百台服务器的资源瓶颈,同时也极大地节约了计算成本。
  • Plato 隶属腾讯图计算 TGraph,起源于超大规模社交网络图数据,但可以完美适配其他类型的图数据,同时,Plato 作为高性能、可扩展、易插拔的工业级图计算框架,推动了业界超大规模图计算框架的技术进步。

核心能力 

Plato 目前主要提供两方面的能力:

  • 腾讯数据量级下的离线图计算
  • 腾讯数据量级下的图表示学习

Plato 的整体架构如下图所示。Plato 可运行在通用的 X86 集群,如 Kubernetes 集群、Yarn 集群等。在文件系统层面,Plato 提供了多种接口支持主流的文件系统,如 HDFS、Ceph 等等。

Plato 高性能图计算框架的核心是 Plato 自适应图计算引擎。目前 Plato 计算引擎针对不同类型的图算法,提供了稀疏稠密自适应计算模式、共享内存计算模式和流水线计算模式等,还设计了良好的接口支持接入新的计算通信模式。此外,Plato 自适应图计算引擎还包含了图划分、图表示以及多层级计算通信协同调度等模块。

计算引擎之上,Plato 为算法设计者或具体的业务提供多层次接口:从底层的 API,到图算法库,再到为具体业务量身打造的“解决方案”——图工具集。通过这些应用层的接口和工具,Plato 还可以把离线计算结果与其他机器学习算法相结合,共同支撑顶层的不同业务。

已开源的算法:

  • 图特征
    •  树深度/宽度
    •  图特征打包计算:节点数/边数/密度/节点度分布
    •  N-阶度
    •  HyperANF
  •  节点中心性指标
    •  KCore
    •  Pagerank
    •  Closeness
    •  Betweenness
  •  连通图 & 社团识别
    •  Connected-Component
    •  LPA
    •  HANP
  •  图表示学习
    •  Node2Vec-Randomwalk
    •  Metapath-Randomwalk
  •  聚类/分圈算法
    •  LDA
    •  FastUnfolding
  •  其他图相关算法
    •  BFS
    •  共同类计算
浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报