寻找开源图(如在数据结构中)数据库引擎

时间:2009-04-04 23:08:45

标签: database open-source graph-theory

我正在编写一个操纵某种社交网络数据的应用程序,因此理想的底层数据结构是加权有向图。我想直接对数据进行操作(和搜索),而不是先将整个图形加载到内存中并在之后进行序列化。

这可以使用标准SQL数据库或键/值存储来模拟,但效率非常低(对于我想使用的图遍历算法,例如最短路径等)。

由于谷歌搜索没有发现任何有用的结果,我只想写自己的一半,但我宁愿使用现有的解决方案(如果有的话,我错过了它),而不是重新发明轮子。该项目用于娱乐/个人研究,因此该软件必须是开源的(并且能够在Linux下运行)。

那么,有没有符合上述描述的项目?

谢谢!

3 个答案:

答案 0 :(得分:5)

如果您使用的是Java,可以尝试http://neo4j.org/

答案 1 :(得分:2)

ODBMS怎么样? db40具有Java和.NET实现,因此都在Linux上运行。

答案 2 :(得分:0)

您还可以将图形视为节点数组。每个节点存储其兄弟节点的列表。

因此,您只需在图表中为每个节点存储1个文件即可。然后该文件的内容是它连接到的节点列表(指向自定向)。

然后您可以根据需要读取节点。

这允许您执行迭代整个树的操作,同时仅将一个节点保留在内存中。