首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在GraphEngine中表示关系的最规范的方法是什么?

在GraphEngine中表示关系的最规范的方法是什么?
EN

Stack Overflow用户
提问于 2017-03-07 01:44:07
回答 1查看 104关注 0票数 2

我正试图找出如何在我的TSL中最好地模拟我的数据。在朋友范例中,通过在相关节点中存储单元id (或单元id列表)来暗示关系。然而,在自由基示例中,引入了GraphEdge的概念。我希望文档(也许在这里)能够清楚地了解如何使用GraphEngine正确地建模关系/边。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-01 03:07:30

据我所知,没有这样的标准方式,根据文件,最佳做法也取决于我们自己的要求,例如,性能或方便。以下是我在不同情况下的选择:

  1. 对于一个非常常见的有向无标记图,我只使用邻居的单元ids (邻接列表)作为字段。我发现它对于大多数的图运算是非常有效的;
  2. 对于边上具有属性的有向图,有两种选择:使用自定义struct的值列表,或为边设置单个单元格,以及将边连接到源/目标节点单元。对于大多数图操作,前者实际上比后者快。但代价是不允许不访问节点小区而访问边缘,这是后一个节点小区的好处;
  3. 对于没有边性质的无向图,对于每个边(u,v),我把它们的单元in放在彼此的邻接列表中;
  4. 对于边上具有属性的无向图,为每个边设置单独的边单元,存储其上的所有信息,包括相关的节点和属性;
  5. 对于一个边可以连接多个节点的超图,我的选择是4。

引入的概念GraphEdge被用来通过语言集成知识查询( LIKQ )来识别边缘,但是如果我们的应用程序不是建立在LIKQ之上的话,它不会影响我们的使用。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42638716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档