在 ArangoDB 中使用相同边定义的多个图

2023-12-10

我正在评估 ArangoDB 并尝试创建多个可能包含相同节点集合和相同边集合的图 - 即使每个图可能包含不同的物理文档和边。

然而,当尝试创建一个使用已在另一个图中使用的边集合的图时,我得到“[1921] ... 边缘集合已在边缘定义中使用" error.

当图可以共享相同的文档集合和文档时,为什么图不能重用现有关系?

为了解决这个问题,我必须为每个新图创建一个单独的唯一命名的边定义并单独管理它们。

E.g.我有一个通用关系,称为“next“。这种关系(边)可以在许多图中使用,因为它简单地描述了节点之间的通用链接。但是,每次我创建新图时,我还需要创建新的边定义,称为"[图表名称]-next"而不是仅仅重用退出的“next“边缘定义 - 如果我尝试这样做,我会收到 [1921] 错误。

Edit:mchacki 在下面的回复中指出应该可以在多个图中使用一种关系 - 所以问题是:如果可能的话,如何在不出现 1921 错误的情况下执行此操作?


图模块和边定义的思想如下: 您定义一次关系,例如:

isFriend: Person -> Person
owns: Person -> Item

创建两个边缘集合(isFriend 和 owns)和两个文档集合(Person 和 Item)。 现在,您可以在任意数量的图表中使用完全相同的关系。 假设你有一个social图表仅使用isFriend关系。 但你也有一个eCommerce图表使用owns关系和isFriend同时关系。 现在eCommerce and social share isFriendArangoDB 完全支持这种关系。

不支持的是边缘定义generic在一张图中使用如下:

generic: Person -> Person

在另一个中作为

generic: Item -> Item

这里的问题是,会有一个名为generic两个图都可以访问它。 在查询中,第一个图现在“知道”只能有边Person -> Person在这个集合中,第二个“知道”只有Item -> Item关系。在这两个图中,另一个图的关系没有任何意义,但可能被查询捕获。

因此,这意味着,如果您除了多个图中存储的文档之外还想重用存储的边,则必须为这些情况创建一个相当通用的边定义,并自己处理意外的命中。 对于每个边定义,您可以添加任意多个顶点集合from and to位置,甚至在运行时修改它们。

因此,在您的情况下,每次创建新图表时,您首先使用现有图表之一(将被传播)修改关系以包含有关添加的集合的信息,然后在新图表中重用此关系。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ArangoDB 中使用相同边定义的多个图 的相关文章

  • 关于 ArangoDB 中多个索引的使用

    具有以下结构的文档 path String enabled Long disabled null Long other fields 我想通过路径前缀和某些数字与文档时间戳之间的数字关系的组合来查找文档 伪代码 SELECT e FROM
  • ArangoDB:如何获取2个顶点之间的所有可能路径?

    如何在 maxDepth 2 的情况下获取 2 个顶点 例如 X 和 Y 之间的所有可能路径 我尝试过TRAVERSAL但执行需要大约 10 秒 这是查询 FOR p IN TRAVERSAL locations connections X
  • 在 ArangoDB 中使用相同边定义的多个图

    我正在评估 ArangoDB 并尝试创建多个可能包含相同节点集合和相同边集合的图 即使每个图可能包含不同的物理文档和边 然而 当尝试创建一个使用已在另一个图中使用的边集合的图时 我得到 1921 边缘集合已在边缘定义中使用 error 当图
  • 如何在 arangodb 的 AQL 中引用/转义字段名称?

    我找不到在哪里引用其中包含空格的字段名称 例如在执行时 FILTER s key a Supplier Id 上面的 sql 样式引用不起作用 数组访问也不起作用 正确的方法是什么 现在明白了 我被 SQL 咬住了 忘记了相等比较是用 在
  • ArangoDB 的 SPARQL 接口

    对于 Arangodb 我知道它自己的查询语言 AQL 据我所知 还有一个附加组件 允许使用 Gremlin 进行图形遍历等 在我的一个项目中 我们强烈使用 SPARQL 因此 有没有办法使用 SPARQL 作为 Arangodb 的查询语
  • 顶点和边的模型架构

    如何像 OrientDB 中那样验证图 顶点和边 数据 例如 如果我的图有格式的顶点 边 name any name age 13 如何将它与定义良好的模式 带有验证 相关联 在OrientDB中 还具有将数据存储在顶点和边中的功能 并且每
  • ArangoDB 索引与边缘集合的使用

    任务 更新许多边属性的最快方法 出于性能原因 我忽略图形方法并直接使用集合进行过滤 ArangoDB 2 8b3 查询 报价 边集 FOR O In Offer FILTER O from from and O to to and O ex
  • docker容器中arangodb数据备份策略

    我想备份 arangodb 数据 以防 arangodb 在 docker 容器中运行 arangodb 的数据作为卷安装到主机系统 一种解决方案是创建一个 docker 映像 基于官方 arangodb 映像 其中包含用于备份的脚本阿兰戈
  • 如何解决 Arango 查询承诺错误? [复制]

    这个问题已经存在了 我一直在尝试使用肥皂消息从 Arangodb 获取查询结果到我的前端服务 Angular 4 我能够获得查询结果 但在 console log 中打印出来 但是我如何在这个功能 Service 下获取它 这样我就可以输入
  • 随机选择ArangoDB中的一个文档

    有没有办法使用 AQL 从集合中随机返回文档 我想创建一个随机图用于测试目的 我还没有弄清楚如何从集合中随机选择文档 我希望我能够做这样的事情 db query RETURN nodes RAND 0 LENGTH nodes toArra
  • ArangoDB 分面搜索性能

    我们正在评估 ArangoDB 在构面计算空间中的性能 还有许多其他产品能够通过特殊的 API 或查询语言执行相同的操作 马克逻辑方面 ElasticSearch 聚合 Solr 分面等 我们知道 Arango 中没有特殊的 API 来显式
  • 我的树形图的 Arangodb 自定义过滤器/访问者

    我有一个带有两个边定义的图 如下所示 isDepartment organisation gt organisation hasAccess user gt organisation 组织嵌套在树中 无循环 有多个顶级组织 没有任何传入is
  • 如何将 AQL 的所有结果合并到具有自定义属性的单个文档中

    我有一个 AQL 查询遍历图 它始终应从一组唯一的集合中返回固定数量的文档 因此每个集合只会发生一次并且仅包含一个文档 我希望将它们全部合并到反映文档集合名称的属性下的单个文档中 查询很简单 FOR v IN ANY vertex key
  • 对象内部字段的 Arangodb AQL 更新

    给出以下集合文档示例 timestamp 1413543986 message message readed 8 null 9 null 22 null type 1014574149174 如何使用键 readed 更新对象中特定键的值
  • 最快的 ArangoDB 朋友的朋友查询是多少(带计数)

    我正在尝试使用 ArangoDB 获取朋友的朋友列表 不仅仅是一个基本的朋友的朋友列表 我还想知道用户和朋友的朋友有多少个共同的朋友并对结果进行排序 经过多次尝试 重新 编写性能最佳的 AQL 查询 我最终得到的是 LET friends
  • 转储数据库并以新名称重新导入

    如果我需要使用 MySQL 将数据库 foo 的内容复制到第二个数据库 bar 中 我通常会这样做 mysqldump u root foo gt foo sql mysql u root e CREATE DATABASE bar mys
  • 如何在ArangoDB中设置集群和分片?

    我想在arangoDB中使用分片 我已经制作了协调器 DBServers 如文档2 8 5中所述 但仍然有人可以详细解释它 以及我如何能够在分片之后和之前检查查询的性能 可以测试您的应用程序对于本地集群 所有实例都在一台机器上运行吗 htt
  • 如何使用 ArangoJs 将文档存储在 ArangoDb 图中?

    我正在使用 Nodejs 应用程序中的最新版本的 ArangoDb 和 ArangoJs 我有以下两个顶点 users tokens tokens顶点包含向其中一个用户发出的安全令牌users顶点 我有一个名为的边缘定义token belo
  • ArangoDB 游标超时

    使用 ArangoDB 2 3 1 看来我的光标将在几分钟内过期 我希望它们能持续一个小时 我已使用 TTL 参数设置 AQL 查询对象 如下所示 query removed actual query count true batchSiz
  • 管理多租户 ArangoDB 连接

    我使用 ArangoDB Go 使用 go driver 并且需要实现多租户 这意味着每个客户都将在单独的数据库中拥有他的数据 我想要弄清楚的是如何使这种多租户发挥作用 我知道为每个请求创建一个新的数据库连接是不可持续的 这意味着我必须维护

随机推荐

  • `nls` 无法估计我的模型的参数

    我正在尝试估计堆定律的常数 我有以下数据集novels colection Number of novels DistinctWords WordOccurrences 1 1 13575 117795 2 1 34224 947652 3
  • 会话之间的WCF数据持久化

    我们正在开发一个基于WCF 的系统 在此过程中 我们试图锁定某些数据 以免被多个用户修改 因此 我们决定建立一个数据结构 其中包含执行锁定逻辑所需的信息 例如存储锁定对象的 ID 我们遇到的问题是在会话之间保留该数据 我们是否可以避免执行昂
  • python“bigfloat”包安装问题

    我试图在我的 Mac OS X 10 8 4 上安装 bigfloat 包 但遇到了一些问题 包 bigfloat 需要另外两个依赖项 1 mpfr 和 2 gmp 我在这里安装了gmp http gmplib org 但安装 mpfr 并
  • 使用VBA将多个公式放入一个单元格中

    我正在开发一个宏 将多个公式放入一个单元格中 在本例中 它的 3 个 Bloomberg 公式被合并到一个单元格中 该公式在 Excel 中手动复制或键入时有效 但在 VBA 模块中键入时无效 它会产生错误 编译错误 预期 语句结束 并突出
  • 如何解决“接收失败:连接被对等方重置”错误

    我想 git pull or git fetch命令开启myRepo给我错误但是myTestRepo工作正常 命令给了我这个错误 Fetching origin fatal unable to access http mysite myPa
  • Mysql插入2个表

    我想插入两个表 visits visit id int card id int 登记 registration id int type enum in out timestamp int visit id int 我想要类似的东西 INSE
  • 为什么在 foreach 中对 Linq 分组选择所做的更改会被忽略,除非我添加 ToList()?

    我有以下方法 public IEnumerable
  • 获取具有最高值且有联系的顶行

    我在 PostgreSQL 中有一个名为product其中包含2个字段 id and quantity 我想找到id最高的产品quantity 据我所知 有两种方法 SELECT id FROM product WHERE quantity
  • Eclipse 没有显示已弃用警告?

    根据 Javadocs public Date int year int month int day This constructor was deprecated in API level 1 Date date new Date yea
  • 标记大小/alpha 缩放与窗口大小/缩放绘图/散点

    当探索 xy 图表上具有许多点的数据集时 我可以调整 Alpha 和 或标记大小 以快速直观地了解点最密集的聚集位置 然而 当我放大或放大窗口时 需要不同的 Alpha 和 或标记大小才能给出相同的视觉印象 当我增大窗口或放大数据时 如何增
  • 将商店经理用户名添加到 Woocommerce 管理订单备注

    我现在有一个问题 我有一个插件 可以让我快速更改管理订单列表中的订单状态 不幸的是 商店经理的名字没有被传送 我想我已经找到了正确的代码 但我不知道具体该怎么做 将不胜感激任何帮助 public function save comment
  • 使用 GPUImage 对视频进行色度过滤?

    我正在尝试使用透明键在我的应用程序中显示具有透明度的视频文件 RGB 0x00FF00 或全绿色 使用 BradLarson 的很棒GPUImage工具包 然而 我在使用过程中遇到了一些困难GPUImageChromaKeyFilter过滤
  • 如何在 Windows 7 64 位上使用 theano 设置 cuDnn

    我已经安装了Theano框架并在我的机器上启用了 CUDA 但是当我在 python 控制台中 导入 theano 时 我收到以下消息 gt gt gt import theano Using gpu device 0 GeForce GT
  • 通过日历提供程序添加的事件未显示在 Android 日历应用程序上

    我正在尝试将事件添加到默认的 Android 日历 而不要求用户确认保存事件 所以不是故意的 以下代码没有编译错误或运行时错误 单击该按钮后 不会显示任何错误 也不会向 Android 日历应用程序添加任何事件 我已经在清单中检查了日历授权
  • GAE python 中的 YAML 文件 url 和脚本

    我在 Google App Engine 中使用 Python 2 7 但似乎无法正确设置我的 app yaml 文件 我的目标是如果我去http localhost carlos 我得到了一个被执行的 Carlos py 这是我的目录结构
  • ASP.NET INamingContainer - 可选前缀

    ASP NET 是否始终应用 100元 元素 ID 的前缀 或者在某些情况下 如果保证元素是唯一的 它是否会优化此前缀 最近 我发现所应用的 ID 前缀有所不同 一种具有前缀 另一种则没有 但两者都源自同一源 谁能提供更多有关 INamin
  • C++ 中的免费分析? [复制]

    这个问题在这里已经有答案了 可能的重复 您最喜欢的分析工具是什么 针对 C 在 Java 中 他们有一个很好的免费分析器 它与 sdk 一起提供 称为 jvisualvm C 有类似的东西吗 我使用的是 Windows 并且有 Visual
  • Dotnetnuke 从模块调用 ajax

    我现在正在尝试使用 ajax 调用构建 dnn 模块 但有一个 jquery 错误指出 语法错误 意外的标记 我尝试使用 ajax url 并尝试在根文件夹中创建一个新的 ascx 但仍然显示错误 404 我的ajax调用如下 ajax u
  • 是否可以将 LPWSTR 从 C++ DLL 返回到 C# 应用程序

    C 函数定义是这样的 declspec dllexport LPWSTR stdcall GetErrorString int errCode 我在 C 中这样称呼它 DllImport DLLTest dll public static
  • 在 ArangoDB 中使用相同边定义的多个图

    我正在评估 ArangoDB 并尝试创建多个可能包含相同节点集合和相同边集合的图 即使每个图可能包含不同的物理文档和边 然而 当尝试创建一个使用已在另一个图中使用的边集合的图时 我得到 1921 边缘集合已在边缘定义中使用 error 当图