我对ArangoDB进行评估的一部分包括将一些超过1M行的CSV文件导入到暂存区域,然后删除结果集合或数据库。我将在我设想的生产过程中重复执行此操作。
我了解ArangoDB服务会在此页面上定期调用压缩:
https://docs.arangodb.com/3.3/Manual/Administration/Configuration/Compaction.html
删除数据库后,我等待了24小时以上,并且没有回收任何磁盘空间,因此我不确定此自动化过程是否正常工作。
我想回答以下问题:
上面链接中显示的自动压实参数的默认值是什么?
除了观察文件空间的变化以外,我怎么知道压缩有效?是一个日志文件或其他位置可以指示这一点吗?
如何按需执行压缩?我发现讨论该功能的所有参考资料都表明这是不可能的,但是它们来自几年前,我希望已添加此功能。
谢谢!
答案 0 :(得分:0)
GET
路线/_api/collection/{collection-name}/figures
在属性compactionStatus
中包含一个子属性figures
,其中最后一个压缩的time
和message
调试目的。您可能会对响应中的其他信息感兴趣。请查看doCompact
是否设置为true。
https://docs.arangodb.com/3.3/HTTP/Collection/Getting.html#return-statistics-for-a-collection
您可以运行arangod --help-compaction
来查看压缩的启动选项,包括默认值。此信息也可以在3.4文档中在线获得:
https://docs.arangodb.com/3.4/Manual/Programs/Arangod/Options.html#compaction-options
PUT
路线/_api/collection/{collection-name}/rotate
,直接引用了文档:
旋转收藏的日记。目前的期刊 集合将关闭,并成为只读数据文件。目的 旋转方法的目的是使文件中的数据可用于 压缩(仅对只读数据文件执行压缩,并且 不适用于期刊)
如果当前没有日志,则随后在集合中保存新数据将自动创建一个新的日志文件。
https://docs.arangodb.com/3.3/HTTP/Collection/Modifying.html#rotate-journal-of-a-collection