我想知道如何在服务器/ip/域名的根目录下设置Foxx应用程序
例如,如果我的IP是100.12.32.12如果我转到http://100.12.32.12它将在没有URL重定向的情况下打开单页foxx应用程序
我尝试过的事情
目前我让Arangodb使用tcp://0.0.0.0:80endpoint,因此我让端口工作
我还在我的应用程序的manifest.json中设置了一个index.html文件,并将该应用程序装载到/
但是,当前将转到http://100.12.32.12将我重定向到h
我已经在一个本地单节点开发环境中与Arango合作了几个月,该环境由于维护原因定期重新启动。在受控重启系统后,我的开发数据库已经损坏了5到6次。当它发生时,损坏是微妙的,因为Arango守护进程似乎启动正常,并且数据库在结构上通过web界面(集合、文档都在那里)显示为预期的状态。问题包括Foxx microservice系统未能上传我的验证服务代码(通用500服务错误),以及使用过滤器的查询没有返回预期结果(损坏的索引?)。发生这种情况时,我能够恢复的唯一方法是删除数据库并重建它
我正在寻找关于
我将按照以下说明在此处安装foxx cli:
具体而言,我采取了以下步骤:
sudo pacman -S nodejs yarn
yarn global add foxx-cli
成功安装了foxx-cli@1.3.0使用二进制文件:
-福克斯
完成于13.33秒
说明中的下一步是:
$ foxx --help
我得到:
-bash:foxx:未找到命令
我还尝试了foxx cli,但也没有找到它。尝试另一种方式:
$ node
> foxx
ReferenceError: foxx
我有一个查询,它比较两个集合,并从一侧查找“缺少的”文档。两个集合(现有和临时)都包含大约25万个文档
FOR existing IN ExistingCollection
LET matches = (
FOR temp IN TempCollection
FILTER temp._key == existing._key
RETURN true
)
FILTER LENGTH(matches) == 0
考虑以下数据集:
arangosh> db.createDocumentCollection('city')
arangosh> db.createDocumentCollection('colour')
arangosh> db._createEdgeCollection('likes')
LET cities =
[
{
"key": "1",
"cities": ["toronto", "kingston"]
},
{
"key":
如何像AQL中的这个SQL示例那样进行筛选
SELECT * FROM test WHERE option NOT IN ('A', 'B', 'C')
在v2.3及以上版本中,可以执行以下操作:
FOR doc IN test
FILTER doc.option NOT IN [ 'A', 'B', 'C' ]
RETURN doc
在早期版本中,以下各项应起作用:
FOR doc IN test
FILTER ! (doc.option IN [ 'A', 'B', 'C
我正在调查arangodb中的性能问题。我注意到,在执行某些AQL时,它会执行大量I/o(特别是读取操作)。我脑子里有以下问题:
实际加载到物理内存中的内容。是预写日志文件、数据文件还是日志
如果我假设所有3个都已加载,那么为什么在读取数据时会有I/o
AQL在日志/数据文件上运行,或者它还考虑了预写日志文件数据
如果它只在日志/数据文件上运行,那么我们有可能在写前文件中有新数据,但aql不会返回该数据
系统根本不使用任何交换。但AQL运行时间仍在增加。有时跑步需要10秒的时间。我在arango
我翻阅了文件,结果空无一人,我希望有人能帮我
我想在同一台机器上运行Arango的两个副本(相同版本)——一个用于实时,一个用于测试,在不同的端口上
我不想设置docker环境或类似的环境
非常感谢您的任何帮助-操作系统是Ubuntu,但会为任何操作系统提供建议。查看此处的文档:看起来应该很简单,只需指定第二个服务的数据库目录和端口即可:因此您需要创建一个配置文件,并确保它具有:
server.endpoint: What IP address and port to bind to
log p
我正在用ArangoDB和Foxx让自己跟上进度,到目前为止,体验非常棒!不过,我有一个问题:
对于Foxx路由器,可以指定查询参数,例如/graph/nodes?eyes=blue&hair=blond
然而,让我困扰的是,我被迫(或者至少在几次尝试之后,我有了这样的印象)必须硬编码,我希望查询眼睛和头发的参数
这是真的吗?如果是的话,有没有解决办法?对于我来说,这在nosql环境中有点奇怪,因为它能够在集合中存储具有所需属性的文档
我希望我能够,例如,在?之后获取URL的整个部分,对字符串执
在使用单个arangodb实例时,我使用了根用户和密码来验证我的应用程序中的pyArango连接。
我试着用集群做同样的事情,但我做不到。
有更好的办法吗
我有一个文档集合“节点”和一个边缘集合“属性”。
我正在尝试获取“属性”集合中的所有边,从:'node/582148'到:'node/582016'
我能设计的最简单的AQL查询如下:
FOR v, e, p IN OUTBOUND 'node/582148' `attribute`
FILTER e._to == 'node/582016'
RETURN p
是否真的没有办法在一个方面做到这一点,比如:
FOR v, e, p IN OUTBOUND 'node/582148
我是ArangoDB的新手,在优化查询时遇到困难,希望能得到一些帮助
我在下面提供的查询是我正在努力解决的一个真实示例,758.078 ms在我的dev数据库上,但是在登台时,对于更大的数据集,需要531.511 s
我还将提供在dev和staging中遍历的每个边缘表的大小。非常感谢您的帮助
for doc in document
filter repo._key == "my-key"
for v, e, p in 3 any doc edge1, edge2, edge3
我试图在arangodb中运行一些地理查询,但没有得到结果。
这是我试过的
Created index (in java)
final Collection<String> fields = new ArrayList<String>();
fields.add("latitude");
fields.add("longitude");
db.collection("foo").ensureGeoIndex(fields,null);
来自web界面的foo记录
我正在尝试编写一个AQL查询,它返回一个顶点的所有子级以及该顶点本身
例如,我有这样的结构:
A B C
| | |
D------ E F
以下是我的查询的外观:
for parent in collection
for child in outbound parent link
RETURN{ parent,
child
}
但它以表单的形式返回结果
"child":
我需要能够过滤arangodb图遍历的顶点类型。有两种顶点类型,比如vA和vB。只有一种类型的边可以将_连接到任何一种类型的顶点
vA有一个带有数值的属性“pfi”。
vB有一个属性“Alias”,它是一个字典(文档),包含几个属性/值对(整数为字符串):整数。整数作为字符串属性包含与vA中pfi属性相同的数据/数字
我从每个起始顶点p0开始(在查询的前面确定)。每个p0都有属性“零点id”和“pfi”
我需要在出站方向上进行遍历,并且只保留以下路径:vA类型的所有顶点都具有与p0.pfi匹配的
我对arangodb(和图形数据库)非常陌生。我正在尝试使用sortest_路径功能:
FOR p in SHORTEST_PATH(imdb_vertices, imdb_edges, "imdb_vertices/349","imdb_vertices/1931", "any", { paths: true})
RETURN p
但是贝壳回来了:
usage of unknown function 'SHORTEST_PATH()'
在文档中,我找不到使用此功能的工作示例。首先,Aran
我正在开发一个管理/规划应用程序,该应用程序将有1000多个用户,每个用户都有30多个数据收集
例如,每个用户可能有一个(比如)客户联系人的集合,其中包含多达10个和数百个项目/记录
Arangodb是否适合此应用程序
有更好的选择吗
非常感谢,
LRP我假设所有用户数据库都应该分开保存,因此用户1不应该看到用户2的任何数据等
如果是这样,可以选择为每个用户创建一个单独的数据库,或者,如您所述,为每个用户创建30多个数据库。这将产生30000多个数据库。我认为这不是ArangoDB的理想用法,因
我有两个图表,我想比较它们之间的差异。作为AQL查询的结果,我只需要它们之间的路径和顶点的差异。ArangoDb中是否有对此的查询。如果可能的话,请告诉我。提前感谢。首先,您将在子查询中执行这两个命令:
LET queryA = (RETURN {myFirstGraphResult: true, a: true, b: true})
LET queryB = (RETURN {mySecondGraphResult: true, a: true, b: true})
RETURN queryA
我已经用一个代理和3个主机安装了DCOS,并尝试安装ArangoDB,但它无法部署ArangoDB
下面是根据日志查看的配置。
ArangoDB图像:ArangoDB/ArangoDB mesos:3.0
模式:集群
异步复制标志:0
第二个数据库服务器:0
与数据库服务器的协调人:0
第二个SameServer:0
ArangodForcePullImage:1
ArangodPrivilegeDimage:0
最小资源代理:mem():2048;cpu():0.25;磁盘(*):2048
最
我正在使用Arangodb3.0.2
我想执行类似于此方法的查询
executeQueryWithResultSet()
这在Arangodb 2.3中曾经运行良好
对于Arango 3.0.2,该方法的替代方案是什么?其参数是什么?
这仍然使用旧方法,当我尝试使用Arango 3.0.2时,它给了我错误
谢谢 您可以使用executeAqlQuery()返回您的CursorResult,也可以使用executeDocumentQuery()返回您的DocumentCursor
仅当查询返回扩
我认为arangodb是目前最好的nosql数据库,foxx微服务是一个很好的资源。
唉,3.xxx版本附带的相关文档只能帮助构建一个最低限度的服务。
此外,arangodb商店中的许多应用程序都是使用不推荐的工具(如控制器、存储库)开发的。
虽然web界面中可用的向导可以轻松创建新服务,但我不明白为什么必须创建一个以装入点为前缀的新集合。因此,一个完整的RESTAPI是通过一个很好的文档生成的,但是除非我更改一个已经存在的集合的名称,否则它是绝对无用的。这是为什么 生成器是一个快速样板生成器,
那么说:
COLLECT diff=q.field进入fielded
是否有办法限制已部署的的长度?我知道有SLICE()函数,但也许有一个性能优化限制
据我所知,收集后限制将限制差异(组)而不是组内容
COLLECT diff = q.field INTO fielded
LET rest = (FOR qx IN fielded[*] LIMIT 4 return qx)
我不知道这是否会导致性能优化。您希望以何种方式限制组?每组最多4个元素?有什么奇怪的元素,还是特别的元
我有这样一份文件:
{ "baths": 2, "beds": 3, "id": "3225C", "addrs": [
{
"line2": "",
"line3": "",
"state": "OH",
"zip": "67845",
"line1": "3225 ABC AVE",
"city": "CLEVELAND"
},
{
"line2": "",
这应该是容易操作,但我找不到如何实现这一点。
我有两个来自不同集合的文档,现在我想使用现有集合中的新边缘链接它们。我正在尝试使用edge-collection.save函数,如下所示:
edge collection.save(用于Sy中的s)
过滤器s._key=403560128,用于Im中的i
过滤器i._key=353031872,点)但不起作用。如何执行此操作?edge collection.save()在尝试插入时不需要AQL语句。它需要from和to的原始\u id属性,并作为包含
几天后,我们的ArangoDB安装遇到了问题。启动后几分钟/最多一小时,所有与数据库的连接都被拒绝。arango日志文件说“打开的文件太多”。一个“lsof | grep arango | wc-l”显示该数据库有大约50000个打开的文件句柄,这比linux系统允许的最大值(大约3m)要低很多。
有人知道这个错误是从哪里来的吗
我们使用的是具有3.13内核的Ubuntu Linux。30 GB RAM和三个内核。该数据库仍然非常小,大约有150万个条目,大小为50GB
Thx,塞卡纳
编辑:
对阿兰戈来说真的很新鲜,我正在尝试,所以请容忍我。我有一个feed集合,每个feed都可以被用户喜欢
[用户]---喜欢订阅源-->[订阅源]
我正在尝试创建一个查询,该查询将返回其作者提供的提要,并将喜欢的数量添加到结果中。这是我到目前为止所做的,它似乎可以工作,但它只返回至少有1个like的提要(提要和用户之间存在一条边)
下面是我的问题
FOR f IN feed
SORT f.creationDate
FILTER f.author == @user_key
LIMIT @st
我正在运行ArangoDB3.4.5,并且一直在使用PRUNE语句。我在组合条件时遇到了一些困难
假设路径p上的一些顶点v具有整数属性ia,而一些v具有布尔属性ba。甚至沿着p索引v,例如p。顶点[2]都有ba
PRUNE有(v,“ia”)和v.ia!=5
它自己工作。
PRUNE p.vertices[2]。ba==false或p.vertices[4]。ba==false
它本身也可以工作
我注意到,我不能通过多个PRUNE语句或将它们放在一个查询中组合它们
修剪(条件1)或(条件2)。此外
我已经和ArangoDB玩了一段时间了,并试图遵循关于如何使用Foxx Manager部署Foxx应用程序的指南。问题是,我无法使用Foxx管理器部署简单的应用程序
我尝试使用以下命令安装它:
foxx-manager install hello-foxx /example
出现以下错误:
Error: Cannot find application 'app:hello-foxx:1.4.1'
日志显示未找到此应用程序:
2014-06-30T08:22:25Z [25822] ERROR
我使用带有nodejs和arangojs驱动程序的arango,其中一个arango集合有10000000个文档
有时页面错误上升(150或500),arango冻结,不响应查询请求,arango web面板也冻结
我的服务器配置为:
内存:6 GB
CPU:8核
(来自web面板arango,使用4.76 GB(83.90%)和6 GB的ram)
更新1
这是api/collection/AdsStatics/figures的输出
{
"id": "191689719157",
"na
我希望两个都向上跑
for i in [1,2]
upsert { _key: i } insert {v:i} update{} in Test
upsert { _key: i*100 } insert {v:i*100} update{} in Test
但是我有
Query: variable '$OLD' is assigned multiple times (while parsing)
版本:3.1.14
编辑
在实际查询中,我想做的是这样的事情
FOR n IN MyData
如何将路由拆分为不同的文件
这是我尝试过的,但不起作用:
// file 'index.js' as main in manifest.json
const createRouter = require('@arangodb/foxx/router');
const router = createRouter();
const entries = require('./routes/entries')
entries.init(router);
module.context.use("",
我想遍历一个图并检查每个顶点的度数。如果某个顶点的阶数超过阈值,则该顶点必须包含在结果中,但遍历过程不得遵循该路径。根据文档,修剪选项似乎适合我
我写了这个问题:
FOR v, e IN 3 ANY 'nodes/ce07aa' GRAPH 'test_graph'
PRUNE (FOR r IN rels FILTER r._from == v._id COLLECT WITH COUNT INTO count RETURN count) + (FOR r IN rels FILTER
如何对文档进行采样并确定其结构有一个诀窍:
据说,您不能查询内部形状数据。但检查某些文档只能大致了解使用了哪些属性键,或者必须扫描整个集合
所以我的问题是:数据库是否存储内部某个地方存在的属性?至少对于公共属性
如果是,为什么不能查询该数据?它将比输出大致相同信息的用户定义函数效率更高
如果你能“免费”发现这些方案那就太好了:
每当在集合中首先使用属性时,ArangoDB都会将其存储在内部某处。这意味着它会跟踪集合中使用了哪些属性。然而,有几个问题:
属性名称全局存储,但嵌套的属性名称单独存
如果我没记错的话,在插入新文档时,ArangoDB不关心对象属性的顺序,有没有办法保证属性的顺序与json对象中声明的相同?没有,没有办法确保对象中键/属性/属性的顺序
对于ArangoDB,以下文件应相同:
{ "a" : 1, "b" : 2 }
{ "b" : 2, "a" : 1 }
它甚至可以以不同的顺序返回相同的文档对象的键/属性/属性
如果键/属性/属性的顺序很重要,那么确保它的唯一方法就是使用值数组。但是,这将不允许通过命名键/属性/属性进行访问,而只允许通过数字索引进行访问。
我得到了构建一个应用程序的数据,该应用程序具有产品零件号形式的顺序数据:“000000”、“000001”、“000002”、“000010”、“000011”…。以前的应用程序是一个旧的MS Access数据库,在零件号生成器中没有任何间隙填充功能,因此“000002”和“000010”之间存在间隙(是的,它们也是字符串,但我可以使用它…)
我们可以继续基于最后一个值递增,忽略差距,但是,为了在命名方案中使用所有可用的数字,我们希望能够填补差距。我们的命名方案使用前两位数字描述“产品系列”,因
是否有一种干净的方法可以使用AQL将边的\u交换到和\u交换到值?根据:
要更改边缘端点,您需要删除旧文档/边缘并插入新文档/边缘。其他字段可以在默认集合中更新
所以我能想到的是这样一个查询:
FOR edge IN edge_collection
FILTER [some criteria]
LET tempEdge = KEEP(edge, ATTRIBUTES(edge, true))
LET newEdge = MERGE([{'_key':edge._key},
在ArangoDB 2.4.0中,我观察到以下内容。在执行超时运行的查询时,似乎存在内存泄漏。说明:
我执行的查询持续时间超过了设置request timeout=3600所允许的时间(例如,在arangosh配置中)
arandod开始工作,消耗CPU和RAM
在给定的时间(此处为3600秒)之后,查询将抛出
异常(2001-无法连接到服务器),顺便说一下
起初有点混乱,因为在我的情况下,这不是连接错误,
这是一个超时错误)
arangodb停止使用CPU,但不释放已使用的RAM
到目前为止,
我尝试使用诸如HAS、UNSET等文档函数,希望它们能像文档中描述的那样。这将导致语法错误1501。我还发现它们在AQL编辑器中不会像其他信号词那样突出显示
下面是我在教程服务器上测试的一个示例:
FOR u IN users
LIMIT 1
UNSET(u, "birthday")
RETURN u
有人知道怎么回事吗?好的,好的。。。写完这篇文章后,我明白了:一个人必须把它分配给某个东西。e、 g
FOR u IN users
LIMIT 1
LET tmp
我经常将数百万条记录插入一个新的(通常是易变的)集合中,从而使用AQL声明,例如:
FOR w IN relatedAffils
COLLECT from = w._from, to = w._to INTO agg
INSERT { "_from": from, "_to": to, "weight": LENGTH(agg),
"fromAff": DOCUMENT(from).affiliation,
[...SNIP...]
}
我正在尝试访问远程ArangoDb安装(在windows服务器上)
我已经尝试过在arangod.conf中更改端点,如另一篇文章中所述,但一旦更改,数据库就会停止远程和本地响应
我希望能够远程执行以下操作:
在我的应用程序代码中连接到服务器(在开发过程中)
从本地arangosh shell连接到服务器
连接到Arango服务器仪表板()
请看一下文档。它解释了如何绑定以及如何检查它是否有效。请看一下文档。它解释了如何绑定以及如何检查它是否有效。请看一下文档。它解释了如何绑定以及如何检查它是否
我正在将数据从Mongo迁移到Arango,我需要复制一个$group聚合。我已经成功地复制了结果,但我担心我的方法可能是次优的。AQL可以改进吗
我收集的数据如下所示:
{
"_id" : ObjectId("5b17f9d85b2c1998598f054e"),
"department" : [
"Sales",
"Marketing"
],
"region" : [
"US",
"UK"
我需要知道如何获得arangoDB的主子关系。
我有一个名为user的以下文档集合
{
"firstName": "dasdsa",
"lastName": "Deshpande",
"emailAddress": "Abc@GAURAV.CO.IN",
"password": "aA@1234",
"applicationId": [
180031,
180091
],
"isActiveUser": "false",
"isAdminUser"
有人知道arangodb是否有可用的数据字典吗?本质上,我们负责报告,如果能够运行一个查询,使我们能够列出集合和属性的列表,这样我们就可以看到已添加/删除/更新了哪些内容,这将是很有帮助的
基本上,oracle中所有_tab_列的等价物都会有所帮助
谢谢您可以使用arangosh命令()并使用db.\u collections()列出数据库中的所有集合。然后,您可以运行一个查询,该查询遍历集合中的每个文档,并获取其属性()
bash脚本示例:
#/bin/bash
读取-p“数据库:”数据库
阅
我正在寻找一个简单问题的解决方案。我来自一个MySQL开发公司,但在这里仍然存在问题,并且与AQL有着密切的关系。我想显示没有重复文章键的页面分页用户的评论。我有一个评论集
_key, user_key, content_key, comment, stamp_create
例如:
1, 4483, 200, "reply 1", "2021-04-24T14:55:55+00:00"
2, 4483, 200, "reply 2"
我通过javascript客户端使用arangodb游标
db.\u查询('query',{param:value})
我的查询包含限制运算符,我需要一个总数。如何将fullCount选项传递到游标中,并将extra.fullCount读回。如果您是从ArangoShell运行查询,那么最简单的方法应该是在调用db时设置options属性。_query()如下:
var data = {
query: "FOR doc IN collection FILTER doc.attr == @v
插入文档时,如果密钥是在客户端生成的。它是否会降低单台计算机或群集上的写入速度
我这样问是因为我认为服务器端生成的密钥肯定是唯一的,不需要检查其唯一性。
但是,在客户端生成密钥时有哪些缺点或需要记住的事项?(在即将到来的单机、分片、主机复制中)在客户端生成密钥对ArangoDB的性能不会有任何显著影响。ArangoDB将解析传入的JSON,并始终在其中查找\u key属性。如果它不存在,它将自己创建一个。如果它存在于JSON中,将验证它的语法正确性(因为文档键中只允许使用一些字符)。后一种操作只
在MongoDB中,需要监听集合中的更改,这允许创建实时应用程序。我想知道ArangoDB中是否有类似的功能?ArangoDB目前没有
可以使用重复执行对数据库的查询,然后可以将这样的事件添加到触发的集合中,前端可以轮询更改。ArangoDB目前没有
可以使用重复执行对数据库的查询,然后可以将这样的事件添加到触发的集合中,前端可以轮询更改。我的方法是另一种:创建一个Foxx应用程序来拥有或包装集合。我的意思是,只有Foxx应用程序才允许更改集合中的数据。在外部,您可以调用Foxx应用程序控制器上
我看到有用于列出和导出给定集合中所有文档的API,但我需要同时列出/导出数据库中所有集合中的所有文档(ID)。(这是针对我正在开发的服务的验证和确认)。这是可能的,还是我必须一次查询一个集合
谢谢 arangodump将转储数据库中的所有集合,但文档的输出格式如下:
{"type":2300,"data": DOCUMENT}
每个集合文件中的每个文档都有一个这样的条目,其名称如下:
COLLECTION_07cf4f8f5d8b76282917320715dda2ad.data.json
我想检索所有连接到顶点的文档。我可以使用下面提到的两个不同的查询来完成
首先,我的想法是使用存储在其中的信息来找到一个顶点。我可以通过全文查询完成:
FOR doc IN spec
FILTER doc.serial_no == '"12345abc"'
RETURN doc
RESULT
[
{
"_key": "3938424",
"_id": "spec/3938424",
"_rev": "_WP3-fvW---",
"type": "spec-type-545",
"name": "
从ArangoDB检索复杂数据有什么更好的方法:使用所有集合联接和图形遍历的大型查询,还是对每个数据段进行多个查询?我认为这取决于几个方面,例如,要执行的操作、查询发生的场景应该执行,或者如果您喜欢性能而不是可维护性
AQL提供了编写单个非平凡查询的能力,该查询可能跨越整个数据集并执行复杂的操作。将一个大查询分解为多个小查询可能会提高可维护性和代码可读性,但另一方面,对每个数据段单独查询可能会对性能产生负面影响,表现为与每个请求相关联的网络延迟。在处理另一批查询时,还应该考虑场景是否允许使用从数
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 19 页