Neo4j 图计算源码剖析
neo4j 提供了弱小的 OLAP 能力,在数据库上反对多种图算法,包含门路、核心度、社区发现、类似度等算法。实践上来讲,neo4j 通过图计算的插件能够计算 2^31 -1 个顶点的数据,也也就是 21 亿左右。
装置 Neo4j 社区幅员数据库
拉取 neo4j 图计算源码仓库到本地
https://github.com/neo4j-contrib/neo4j-graph-algorithms.git
目前该算法包的最新版本为 3.5,对应的 neo4j 数据库版本也为 3.5. 不过该仓库曾经进行更新了,最新的 neo4j 算法反对仓库是 graph-data-science,用作科学计算库,蕴含了更多的算法,机器学习等。
本次源码剖析还是基于图算法包 3.5 版本的,倡议应用对应版本的 Neo4j 数据库。
导入 Neo4j-graph-algorithms 算法库源码
这里能够应用 IntelliJ IDEA,间接 open 或者 import 已存在的源码我的项目,将我的项目增加为 maven 我的项目。
neo4j 算法库反对很多种算法,这些算法都是基于图论的算法,在 neo4j 控制台应用 CALL algo.list()
能够看到所有算法的品种以及每种算法的应用形式。
在 doc 模块具体记录了每个算法的原理,参数,计算用例。文档基于 asciidoc
语法格局编写,有趣味的敌人能够装置 adoc 插件查看的。
下载 neo4j 算法领导手册《graph-algorithms-book》
算法的外围模块是 core 以及 algo 两个子 maven 我的项目,
当前我会基于 test 单元测试类模块作为入口对整个算法体系进行剖析。