美文网首页
1. 图计算的开源实现

1. 图计算的开源实现

作者: GongMeng | 来源:发表于2018-12-01 17:45 被阅读0次

1. 相关背景

阅读: http://kowshik.github.io/JPregel/pregel_paper.pdf

这是Google发表于2010年的论文, 描述了在分布式环境下如何执行图算法的一些思路. 包括最短路径, 最小连通图等等. 其后CMU的GraphLab实现了一个基本的开源版本, Spark GraphX和Apache Giraph接着跟进, 实现了相关的图算法. 这里需要注意的是CMU的GraphLab不是简单的实现Pregel论文, 而是魔改版

这两个图计算方案, 联合DataStax共享的图存储方案, 在 Apache Tinkerpop管理下统一成整体图解决方案, 这个项目就是Titan. 很可惜的是该项目已经实际上死亡了.

由于早期的Titan非常强的依赖Cassandra的一些特性, Cassandra的商业公司DataStax干脆停止了1.0的开发, 直接发布商业版的DataStax DSE Graph解决方案. 不同于neo4j, DSE面向的是1B Vertex + 1T Edge的规模来设计的.

Titan在国内有一个非常强的商业版分支由Huawei维护

在开源领域, 以Google的一部分工程师为核心, 开始在Titan的残骸上构筑Janus Graph开源解决方案.

Janus是罗马的门神, 而Titan的开发代号是Aurelius, 是罗马皇帝名

2. 理想中需要介绍的部分

  1. Pregel的基本思想
  2. Page Rank, Shortest Path, Bipartite Matching, Semi-Clustering算法基于Pregel的实现
  3. 图存储, 基于Titan1.0中HBase分支的解决方案
  4. Spark GraphX支持的基本算法
  5. Spark GraphX中Graph基于RDD的实现
  6. Spark GraphX中DAGScheduler对Pregel的实现

3. 题外话 Tinkerpop

这是一个非常好玩的项目


Tinkerpop 官网

它的每个组件都有一个对应的卡通形象, 负责用户UI的绿色哥布林, 负责用户权限的黄色机器狗, 负责存储的红色机器人 etc

当前版本是3.x.x, 从1.x.x起, 每个动画角色有配套的漫画, 背景设定, 随着项目进展, 有剧情, 甚至有这个几个机器人可以进行合体的必杀技设定....真的是非常好玩的开源项目.

相关文章

网友评论

      本文标题:1. 图计算的开源实现

      本文链接:https://www.haomeiwen.com/subject/tkqrcqtx.html