有使用复杂遍历图形数据库的经验的人吗?使用Erlang?优势?小字?似乎默认选择是neo4j出于某种原因。我喜欢Phoebus(Erlang中的分布式图查询,基于Google的Pregel算法),但它似乎是废弃的。
t5zmwmid1#
看看OrientDB,它是Neo4J的一个很好的替代品。OrientDB是完全开源的,与拥有商业许可证的Neo4J相反。此外,OrientDB支持标准蓝图API,并且基于RB-Tree算法,该算法对于各种图形用例都有很好的性能。大多数图形数据库的共同点是它们只会向上扩展。它们可以横向扩展,尽管通常是只读示例。这意味着,如果您的数据量过大,您还需要一个非常大的服务器(内存和存储)。一个分布式图替代方案是Titan。Titan是一个分布式图形数据库,我相信它是基于Hadoop的。Titan是为了横向扩展而设计的,可以为大规模的并行提供一种有趣的方法,但需要一些开销。有些用例更适合这样做,例如类似于Google Pregel用例。
ccgok5k52#
您可以在RDF数据库中表示图,如Stardog。应该有一些现成的代码可以使用erlang进行SPARQL查询。Wikipedia有一个很好的triple stores列表。
2条答案
按热度按时间t5zmwmid1#
看看OrientDB,它是Neo4J的一个很好的替代品。OrientDB是完全开源的,与拥有商业许可证的Neo4J相反。此外,OrientDB支持标准蓝图API,并且基于RB-Tree算法,该算法对于各种图形用例都有很好的性能。
大多数图形数据库的共同点是它们只会向上扩展。它们可以横向扩展,尽管通常是只读示例。这意味着,如果您的数据量过大,您还需要一个非常大的服务器(内存和存储)。
一个分布式图替代方案是Titan。Titan是一个分布式图形数据库,我相信它是基于Hadoop的。Titan是为了横向扩展而设计的,可以为大规模的并行提供一种有趣的方法,但需要一些开销。有些用例更适合这样做,例如类似于Google Pregel用例。
ccgok5k52#
您可以在RDF数据库中表示图,如Stardog。应该有一些现成的代码可以使用erlang进行SPARQL查询。
Wikipedia有一个很好的triple stores列表。