Graph 数量';图表';在ArangoDB数据库中

Graph 数量';图表';在ArangoDB数据库中,graph,arangodb,Graph,Arangodb,我正在探索Arangodb,我不确定我是否正确理解如何在Arangodb中使用图形概念 假设我正在模拟一个社交网络。我应该为整个社交网络创建一个图表,还是为每个人及其联系创建一个图表? 我觉得我应该用一张图表。。。但是否存在与该选择相关的性能/偏好问题 也许根本的问题是:我应该把ARANGODB中的图形概念看作是一个技术或商业相关的概念吗? 谢谢您不应该使用人均图表。第一个快速的答案是使用一个图表 一般来说,我认为应该将图形概念视为一个技术概念。话虽如此,通常情况下,(数学)图非常自然地模拟了业

我正在探索Arangodb,我不确定我是否正确理解如何在Arangodb中使用图形概念

假设我正在模拟一个社交网络。我应该为整个社交网络创建一个图表,还是为每个人及其联系创建一个图表? 我觉得我应该用一张图表。。。但是否存在与该选择相关的性能/偏好问题

也许根本的问题是:我应该把ARANGODB中的图形概念看作是一个技术或商业相关的概念吗?
谢谢

您不应该使用人均图表。第一个快速的答案是使用一个图表

一般来说,我认为应该将图形概念视为一个技术概念。话虽如此,通常情况下,(数学)图非常自然地模拟了业务中产生的关系。因此,图形数据库中的技术概念图很好地映射到业务逻辑

社交网络就是一个很好的例子。这里的典型问题是“查找用户的朋友?”、“查找用户朋友的朋友?”或“从用户a到用户B的最短路径是什么?”。图形数据库对于涉及先验未知路径长度的问题最有用,例如最短路径示例

回到最初的问题:您应该从查看您将对数据进行的查询开始。然后,您需要创建它,以便这些查询可以方便地映射到数据存储可以回答的标准图形操作(或者其他查询)。然后,这将告诉您在同一个图中应该包含哪些类型的信息,以及哪些位属于不同的图

在您最初的社交网络用例中,我假设您希望运行涉及友谊关系链的查询,因此这些链中的边必须在同一个图中。但是,在更复杂的情况下,例如,可以想象您有一个“友谊”图和一个“跟随”图,它们都使用不同的边但使用相同的顶点。在这种情况下,您的社交网络可能有两个图表