问题标签 [arangojs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
arangodb - ArangoDB AQL:我可以从多个起始顶点遍历一个图,但确保所有遍历的唯一顶点?
我有一个包含大量相对较小的不相交图的图形数据集。我需要从一组匹配特定搜索条件的顶点中找到所有可到达的顶点。我使用以下查询:
查询很慢,即使它返回正确的结果。这是因为 Arango 实际上最终会多次遍历相同的子图。例如,假设有以下子图:
当过滤条件选择顶点 a 和 c 时,Arango 最终会从 a 和 c 开始进行两次独立的遍历。它在这两个遍历过程中访问顶点 d 和 e,这会浪费时间。添加 uniqueVertices 选项没有帮助,因为在不同的遍历中不会检查顶点的唯一性。
为了确认对性能的影响,我创建了一个额外的根文档,并将其中的链接添加到我的过滤器找到的所有文档:
现在,以下查询的运行速度比我的原始查询快 4 倍,同时产生相同的结果:
不幸的是,我无法为所有查询创建假顶点/边,因为创建它需要更多时间。
我的问题是:Arango 是否提供了一种方法来确保在给定查询中的所有遍历中访问的顶点的唯一性?如果没有,有没有更好的方法来解决上述问题?
go - 通过 Arango DB 中的不同集合进行查询并在路径边缘应用过滤器
我有如下图所示的图形数据库结构。
如前所述,我有3 个文档集合 - Collection 1、Collection 2、Collection 3。我也有2 个Edge 集合 - Edge Collection 1有一个属性类型,它可以采用两个值T1或T2,Edge Collection 2。
我有一个满足集合 1 的特定过滤条件的文档列表 - 所有状态属性为已完成的文档。假设列表如下
现在,从列表中的每个项目作为开始,我需要找到沿着Edge Coll 1中的边缘遍历的集合c2,并且该边缘必须是 T1 类型,该项目使用 Edge Coll 1 中的边缘和类似的集合项目c3沿着边缘遍历在Edge Coll 2中。
获得两者后,我需要将其存储为三元组 - {coll 2, coll 1, coll 3} 对于列表中找到的每个 coll 1 项目
我知道我可以使用type == T1 和 _from == coll 1._id过滤Edge Coll 1中的项目。
同样,我可以重复Edge Coll 2并将这两个结果合并到我的后端 (GoLang) 中。
但是,如果我能够使用图形遍历和单个宏(类似于 SQL 宏),那会很慢并且会更好。那时我只需要对 DB 进行一次后端调用。
javascript - 如何移动代码以设置 ut DB 并从我的文件中收集并要求它?
所以,假设我有这个完美运行的代码。
但是我想将顶部代码移到另一个文件中,只需要 db 和 collection,我该如何让它工作?一直在努力让它工作太久了。
node.js - 尝试在 arangodb 中同时执行两个查询时出现连接重置错误?
我正在使用arangojs v6.14.1
和arangodb version 3.6.4.
。我也有nodejs
用于服务客户请求的快速应用程序。
我在执行并发请求时遇到问题。我同时处理客户端请求时的数据库连接挂断:
应用收到请求后会做什么?
打开数据库连接 -
有多个中间件功能需要访问以执行各种功能和可访问性检查。对于我尝试的每个中间件
- 打开一个新的数据库连接->
- 执行动作 ->
- 关闭连接->
- 将结果返回到下一个中间件。
这适用于一次单个请求。但是如果我尝试同时调用两个 API,我会收到 CONNECTIONRESET 错误。并且还会抛出套接字挂断错误。
我试图推荐关闭连接方法,它开始正常工作了一段时间。但是当我增加连接数时,它再次显示与“CONNECTIONRESET”相同的错误。
我已经搜索了arangojs
有关连接操作的文档。但我还没有找到任何有关相同的信息。
任何帮助将不胜感激。
node.js - ArangoDB:使用嵌套对象集合键加入
在 ArangoDB 连接查询方面需要一些帮助。我有如下文档,其中 User 包含嵌套对象中的 Group 集合键(groups)
。当我查询用户时,我需要加入组集合并更改响应。应该WITH QUERY
只做。请检查下面给出的示例以获得更清晰的信息。
我试过这个查询:
它返回groups
asArray
但需要groups
成为Object
但它应该是这种格式:
您的帮助将不胜感激!
arangodb - Arango 数据库复制应用程序不工作
我正在尝试设置 Arango 的主从模型。能够进行第一批更新,但实时同步应用程序不起作用。它在索引约束上一直失败,这在 master 中工作得很好,并且没有重复键问题。
应用程序状态。
我尝试了(同步,异步)一切。它只是进行第一批更新,并没有进行实时更新。不知何故,应用程序刚刚关闭。请帮忙