代表有向无环图(DAG)

16

我需要在DAG中存储依赖项。(我们正在以非常细粒度的水平映射新的学校课程)

我们使用Rails 3

注意事项

  • 宽度比深度更广
  • 非常大的
  • 我估计每个节点有5-10个链接。随着系统的增长,这将增加。
  • 许多读取,很少写入
  • 最常见的是查找:
    • 一、二级依赖关系
    • 搜索/验证依赖关系

我知道SQL,我会考虑NoSQL。

寻找指向实现选项的良好比较的指针。

也对我们可以快速开始的内容感兴趣,但过渡到更健壮/可扩展的内容将不那么痛苦。

4个回答

15

5
我认为即将发布的Ruby绑定(目前为测试版)与图形数据库Neo4j应该很匹配。它可用于Rails 3。底层数据模型使用节点和有向关系/边,两者都具有键/值样式属性。为了扩展只读架构,Neo4j使用主/从复制设置。

2
开始快速入门使用SQL,但非常关注Neo4j,并将在几个月内迁移到它。 - Ben Sand

4
你可以使用OrientDB作为图形数据库。由于关系存储为链接而不是JOIN,因此它非常优化关系。加载具有1,000个顶点的双向图仅需要几毫秒。

Rails的语言绑定还没有可用,但您可以使用HTTP RESTful调用。


1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接