7

有使用复杂遍历的图数据库经验的人吗?并从 Erlang 使用它?优点?小字?

出于某种原因,默认选择似乎是 neo4j。

我喜欢 Phoebus(Erlang 中的分布式图形查询,基于 Google 的 Pregel 算法),但它似乎是废弃软件。

4

2 回答 2

9

看看OrientDB,它是 Neo4J 的一个很好的替代品。OrientDB 是完全开源的,与具有商业许可证的 Neo4J 不同。此外,OrientDB 支持标准蓝图 API,并且基于 RB-Tree 算法,这些算法在各种图形用例中表现出色。

大多数图形数据库的共同点是它们只能按比例放大。它们可以横向扩展,尽管通常作为只读实例。这意味着如果您的数据量过多,您还需要一个非常大的服务器(内存和存储)。

分布式图替代方案是Titan。Titan是一个分布式图数据库,我相信它是基于Hadoop的。Titan 旨在向外扩展,可以为大规模并行提供一种有趣的方法,但需要一些开销。有些用例更合适,例如类似于 Google Pregel 用例。

于 2014-01-10T03:13:59.637 回答
1

您可以在像Stardog这样的 RDF 数据库中表示图。应该有一些现成的代码用于使用 erlang 进行 SPARQL 查询。

维基百科有一个很好的三重商店列表。

于 2013-01-14T21:26:12.857 回答