问题标签 [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.
graph - 从边缘集合创建 arango 图
我在 arangosh(ArangoDB Shell)中工作,试图将一些图形分析放在一起(如果我能做到的话,我稍后会转到 Foxx)。
我有两个系列。我们将调用的顶点集合People
和边集合Relationships
。
按照手册,我可以根据以下内容创建图表People
:
但我知道它People
不包含连接该图中顶点所需的信息。如果有的话,我宁愿简单地从边缘集合创建图形,Relationships
因为根据定义,边缘集合中的所有文档都具有_to
and_from
字段,从中可以完全指定图形。
我发现手册的下一页绝对令人困惑(我向作者道歉)并且希望获得有关如何直接从边缘集合创建图形或将边缘集合中的信息合并到现有图形中的任何指导。
node.js - 如何为使用 ArangoJS(ArangoDB)的 NodeJS 应用程序实现类似搜索的功能
{ sno:“1”,名称:“abc”,comment1:“dd cdt djdhj”,myComment:“adt dtt cdt abc”}
{ sno:“2”,名称:“adc”,comment1:“dd ddt djdhj”,myComment:“adt t cdt abc”}
{ sno:“3”,名称:“ab”,comment1:“dd cdt djdhj”,myComment:“cdt abc”}
{ sno:“4”,名称:“ddt”,comment1:“dd cdt djdhj”,myComment:“adt dtt”}
我的数据存储在 ArangoDB 中名为 users 的集合中,如上所示
如果我搜索查询“dtt”,它应该返回包含查询 str 的所有文档。
如何使用 ArangoJS做到这一点(就像 NodeJS 应用程序中的简单搜索功能)
我想知道 ArangoJS 中是否有任何内置功能可用,就像 MongoDB 的 find() 方法一样。
arangodb - 使用 ArangoDB 进行动态查询
我正在寻找为 ArangoDB 图数据库编写动态查询,并且想知道是否有最佳实践或标准方法来做这件事。
通过“动态查询”,我的意思是用户将能够构建一个查询,然后在数据集上执行。
ArangoDB 可以支持的方法包括:
- 通过手动注入 bindvars 动态生成 AQL 查询
- 编写 Foxx 函数以提供支持的查询,并让另一个 Foxx 函数将它们绑定在一起以构建响应。
- 编写一个工作流,将数据提取到一个临时集合中,然后调用 Foxx 函数来过滤/排序数据以获得所需的结果。
查询将是非常开放的,有人会(例如):
- 查询所有人口超过10,000,000的国家
- 以平方公里为单位按陆地对国家进行排序
- 选择土地覆盖率排名前 10 的国家
- 选择每个国家/地区使用的主要语言
- 计算每种语言的出现次数。
该查询本身就可以直接执行,但是如果用户能够 [x] 检查或从一系列支持的查询选项中进行选择,以他们自己定义的方式对它们进行排序,并接收输出,则涉及更多一些。
是否有一些支持或推荐的方法来执行此操作?
我目前的方法是编写在每个部分上交付的 AQL 块,可能采用 LET Q1 = (....)、LET Q2 = (...) 格式,然后最后在查询的底部有一个处理查询以生成响应的通用方法。
但我有一种感觉,巧妙地使用 Foxx 函数在这里也有帮助,将 Foxx-Query-Q1 和 Foxx-Query-Q2 编码为支持每种查询类型,然后是一个聚合 Foxx 应用程序,以正确的顺序调用正确的查询建立正确的反应。
如果有人看到了这样做的最佳方法,那么获得一些提示/建议会很棒。
谢谢!
node.js - 函数需要什么参数
我正在尝试通过节点命令行创建一个 edgeCollection。我认为db.edgeCollection
这对我有用。我不知道该函数需要哪些额外参数来创建新的边缘集合。
我目前正在使用 arangojs 版本 2.15.9
如果有一种全局方法可以知道任何函数所需的参数,那就太好了。
我使用 vim 作为我的代码编辑器。
node.js - 如何检查 ArangoDB 中是否已存在集合
Col1
假设我的数据库中已经存在一个集合。所以,做类似的事情:
会很好地工作。
Col2
但是,如果我的数据库中不存在的集合尝试使用相同的东西,即
也可以正常工作。只是它不存在并且不会显示在我的数据库中。如果它抛出了一些错误或我可以使用的东西try
和catch
结果声明。但既然那是不合时宜的,我怎么知道一个集合是否已经存在?
arangodb - 如何从 arangodb-php 调用 ArangoDB Foxx 应用程序
使用 ArangoDB-PHP,我可以轻松运行 AQL 查询,但是否可以使用(意味着“执行”)Foxx 应用程序(即当我从https://github.com/arangodb-foxx/安装 foxx/util-sessions-local 时util-sessions-local ) - 如何使用 ArangoDB-PHP 的创建/更新/删除会话服务?可以通过运行 AQL 或用户 javascript 函数来实现吗?
看看 ArangoDB-PHP 的 Transaction 类似乎不是正确的解决方案,因为它需要读取和写入集合名称......我无法为更复杂的 Foxx 应用程序提供。
arangodb - Arangodb 上的“如果不存在”
我想使用自定义键将值插入 Arango-DB,但我没有找到像 SQL 那样的“如果不存在”函数
像这样的东西也行不通
docker - docker容器中arangodb数据备份的策略
如果 arangodb 在 docker 容器中运行,我想对 arangodb 数据进行备份。(arangodb 的数据作为卷挂载到主机系统)。
一种解决方案是创建一个 docker 映像(基于官方 arangodb 映像),其中包含通过arangodump进行备份的脚本 但问题是谁触发了备份(例如,使用 cron 增强映像或通过外部触发脚本执行克朗)
一个解决方案也是当我能够通过 arangojs 进行备份时(因为将它用于我的节点服务器)。但似乎没有用于此的 API...
你们中的任何人都可以对此主题有解决方案或建议吗?
arangodb - 确定哪个唯一约束导致 ArangoDB 中的 INSERT 失败
我在 ArangoDB 中有一个具有多个唯一索引的文档集合。插入新文档时,插入可能会因为任何唯一索引而失败。有没有办法轻松找出文档中的哪些字段导致插入失败?
例如,以一个存储用户数据的集合为例。“用户名”和“电子邮件”字段上的唯一索引意味着如果其中任何一个字段重复,则插入可能会失败。
错误消息是非特定的:
很长的路要走是分别输入/更新这些唯一字段,以确定哪个字段违反了唯一约束。或者尝试检索与我们的输入值匹配的文档,以确定在尝试插入之前是否会发生冲突。我只是有一种感觉,必须有一个更简单的方法。
有没有办法将字段名称与错误一起返回?还是我从完全错误的角度解决问题?
非常感谢任何想法或建议。谢谢。
node.js - 使用 unix 文件套接字从 nodejs 连接到 arangodb3
我正在尝试在 Gentoo Linux 上使用带有 unix 文件套接字的 Nodejs 7.5.0 连接到 arangodb3。
我在 /tmp/mysocket 启动了带有 unix 套接字的 arrangodb3 服务器。
我尝试了两个不同的模块:
这给了我:
所以它尝试连接到 localhost 端口 80,忽略我的 unix 套接字文件位置
我也试过:
这给了我:
我真的不在乎使用哪个模块.. 只是在寻找支持 unix 文件套接字的东西。有任何想法吗 ?