ArangoDB阻止AQL查询

问题描述 投票:0回答:1

我们的anrango安装遇到了一个新问题。如果我们发送复杂的AQL查询,例如迭代多个集合以查找特定信息,然后跟踪边缘等,则整个数据库都会阻塞。我们看到三个CPU内核中的一个是100%,其他两个是0%-1%左右。运行AQL查询时,数据库不会响应任何其他请求,并且Web界面也无法访问。这意味着整个处理将暂停,直到一个查询完成。

这有两个问题:第一:查询需要很长时间(图形查询)第二:数据库在一个查询工作时没有反应。

这个问题的任何想法/解决方案?您成功合作的最大数据库/图表是什么?

Thx,secana

arangodb
1个回答
1
投票

ArangoDB 2.8包含死锁检测。因此,如果您的查询阻止锁定,ArangoDB现在将引发异常。

ArangoDB 2.8还提供fast graph traversals,可以大大提高图形性能。

另一个好的解决方案是使用replication slave将读取分离到第二个实例。

使用RocksDB作为存储引擎(从3.2开始提供),不再有集合级锁,这意味着大多数查询可以并行执行而不会阻塞:https://docs.arangodb.com/3.4/Manual/Architecture/StorageEngines.html

© www.soinside.com 2019 - 2024. All rights reserved.