TigerGraph开源十大图数据库算法库

TigerGraph开源十大图数据库算法库

基于GSQL的图灵完备的算法,运行算法查询与运行GSQL查询动作一致

日前,全球速度最快的企业级图分析平台TigerGraph宣布,正式开源 TigerGraph GSQL 图数据库算法库,发布3大类共10大核心算法。通过开放这些算法库,将为用户提供图分析的算法模板和示范,让用户以更加简单易用的方式支持更广泛场景的业务分析。

目前,用户可以从GitHub下载该算法库 ,体验TigerGraph原生并行图数据库的高速查询和算法库强大的分析能力。

图数据库核心算法
图数据库算法是一系列的函数,用于计算图、图内顶点及其相互关系的指标和特征。 它可以从内部揭示出某个图中的各个实体之间的角色及其关联关系。TigerGraph GSQL图算法库包含了一系列性能卓越的GSQL查询,所以GSQL的图形算法本质上是GSQL查询。每种算法都可以作为一个独立的查询使用,而每个查询都可以实现某种标准的图算法。

在算法运行中,用户可以选择三种不同格式的输出结果,包括 JSON格式流输出、 输出值写入表格类文件,以及保存为顶点属性值。

目前,GSQL的图形算法库中开源的核心算法可分为三类:路径搜寻的算法、衡量中心度的算法以及衡量群体度的算法。

路径搜寻的算法,用于帮助用户找到最短路径或评估某条路径的可行性或质量。其中主要包括:
  • 无权重单起点最短路径算法(Single-Source Shortest Path)。这种算法在大量应用中都有广泛运用,例如估计事件影响、评估知识传播,或者用于调查犯罪的方法等。
  • 含权重单起点最短路径算法(Single-Source Shortest Path)。 这种算法在寻找更优路线的应用中非常普遍,例如在GPS导航的路径规划中寻找两个地点之间的最短路径。
衡量中心度的算法,用于帮助确定网络中某个顶点对于总体的重要性,可以用来解释“位置有多靠中心”这样的问题。其中主要包括:
  • 页面排名算法(PageRank)。这种算法主要用于测量每个顶点对于其他顶点的影响力,例如能够揭示个人在社交网络中的社会影响力大小、寻找复杂网络分析中的源头和权威性等。
  • 接近中心度算法(Closeness Centrality)。这种算法可以帮助精确地衡量某一个顶点到底“多靠近中心”,例如在复杂的社交网络中,确定出中心度越高的个体,越有可能是网络中的一个中心。
衡量群体度的算法,主要用于评估一个网络结构中个体组合或分裂的程度,同时也能够获得网络的组织程度正在加强或削弱的趋势。其中主要包括:
  • 连通分量算法(Connected Components)。这种算法能够帮助确定互相连通的一组顶点和边的最大范围,例如在社会网络分析领域用于寻找网络中的有联系的小团体或个体。
  • 标签传播算法(Label Propagation)。这种算法是一种启发性算法,利用顶点间的关系建立关系完全图模型,用于确定社群内部关系,例如广泛地应用到多媒体信息分类、虚拟社区挖掘等领域。
算法库总览
  • “即将上线”表示该算法的实现形式即将由TigerGraph发布
  • “n/a”表示该算法一般不会被使用
算法 英文全称 分类 无向边 有向边 权重赋值的边
单起点最短路径 Single-Source Shortest Path 路径 适用 适用 适用
全顶点对最短路径 All Pairs Shortest Path 路径 适用 适用 适用
页面排名 PageRank 中心度 n/a 适用 即将上线
接近中心度 Closeness Centrality 中心度 适用 n/a 即将上线
中介中心度 Betweenness Centrality 中心度 即将上线 n/a 即将上线
弱连通组件 Weakly Connected Components 群体度 适用 n/a n/a
强连通组件 Strongly Connected Components 群体度 n/a 即将上线 n/a
标签传播 Label Propagation 群体度 适用 n/a n/a
鲁汶算法 Louvain Modularity 群体度 适用 n/a n/a
三角计数 Triangle Counting 群体度 适用 n/a n/a
TigerGraph GSQL 算法库特点
作为TigerGraph专门开发的图数据库查询语言,GSQL大大降低了用户的学习和使用门槛,不需要用户具有特别专业的数据库知识。由于GSQL的图形算法本质上是GSQL查询,所以运行算法查询与运行GSQL查询的动作是相同的。正是由于TigerGraph GSQL查询语句特别适用于图数据库的算法,使得高性能的GSQL 算法库具有显著的特点和优势

  • 图灵完备:完全支持命令式编程和程序式编程,是算法运算的理想选择,特别适合高效实时分析。
  • 并行和分布式处理:每种算法都可以作为一个独立的查询使用,也可作为模块在大型图上被调用计算。
  • 代码规范且扩展自由:由于基于GSQL规范编写并由用户自行编译,用户可以非常容易地修改和定制。
  • 完全开源:用户可以通过公布的示例学习不同的GSQL算法,并且也可将自行开发的代码提交到算法库中。
关于TigerGraph
TigerGraph是非常完备和优化的图数据库平台,支持大规模图存储以及大规模图的运行处理,具有非常强大的查询语言和算法库。TigerGraph的技术突破代表了图数据库发展的最新方向,标志着正式迈入了第三代图数据库时代。TigerGraph也因此被Strata Data Awards授予“最具颠覆性初创公司”的奖项。TigerGraph的原生并行图系统与市场上的图数据库解决方案相比,该项技术在查询速度和存储容量方面均具有明显的领先优势。另外,TigerGraph目前推出TigerGraph Cloud,支持在公有云(AWS以及Azure)中应用GSQL查询和可自定义的图算法库。

体验全球最快和功能强大的图数据库,请点击TigerGraph网站获得永久免费的开发者版本;获得高性能GSQL算法库,请登录github下载;阅读更详细的算法库文档请登录TigerGraph技术文档网站 http://docs.tigergraph.com.cn/。