【发布时间】:2018-01-21 15:55:22
【问题描述】:
我正在构建一个由许多“类型”组成的 ArangoDB 边缘集合。按类型,考虑动物物种分类。
我将构建一个连接所有这些的图表。 示例:古代人类物种的父/子:Homo habilis->Homo floresiensis->Homo straightus->Homo sapiens
将它们放在不同的集合中只是为了表面的组织原因。将来它对我还没有想到的功能很有用的可能性很小。
我的具体问题是:在使用多个集合的 ArangoDB 中构建图表是否会影响性能?使用一个大集合会更有效地处理图表吗?
回答第一条评论: 如果我将其分解为不同的边缘集合,它将是 4 个集合,每个集合大约有 300,000 行。类型可以有多个父母和孩子。查询的类型将是最短路径和每个查询之间的任何连接。如果这有意义吗? 6度凯文培根式的东西。
编辑: 有关一些问题和答案,请参阅 cmets。 几乎每一个查询都将跨越多种类型。 许多查询的深度为 5-7 个顶点。 这个项目几乎完全是 READING... 我一点也不担心写入速度。
编辑 2: 我将使用单个实例还是分布式集群?老实说,要么!任何可以加快阅读速度的东西。你告诉我。
【问题讨论】:
-
答案可能取决于您将运行的查询类型。您能否对此更具体一些,并告诉我们您设想有多少种不同类型的边缘集合?你只举了一个例子(父母/孩子)。了解您期望有多少个节点集合以及大致有多少个节点也可能会有所帮助?
-
谢谢。我用更多细节更新了我的问题。
-
单个查询通常会跨越多个边缘集合吗?您能否举一个第二个边缘集合的示例,以及一个跨多个边缘集合的查询示例?
-
几乎所有单个查询都会跨越多个数据集合,但只有一个边缘集合。
标签: arangodb