限制Couchdb中的修订数量

限制Couchdb中的修订数量,couchdb,Couchdb,有没有办法限制couchdb中的修订数量?与配置文件中的硬限制类似的内容。我知道我可以定期压缩数据库,但不知何故,这感觉像是一次黑客攻击。有更好的方法吗?< P>没有可配置的限制,主要是因为CouCHDB使用只附加存储,即它只承诺写入文件的末尾,并且永远不会改变中间的任何东西。因此,可配置的限制毫无意义 压缩是您唯一的选择。关于邮件列表上的自动触发压缩,已经有一些讨论,但目前只能手动触发。可以通过此HTTP API在每个数据库上进行压缩: PUT /{db}/_revs_limit 设置Cou

有没有办法限制couchdb中的修订数量?与配置文件中的硬限制类似的内容。我知道我可以定期压缩数据库,但不知何故,这感觉像是一次黑客攻击。有更好的方法吗?

< P>没有可配置的限制,主要是因为CouCHDB使用只附加存储,即它只承诺写入文件的末尾,并且永远不会改变中间的任何东西。因此,可配置的限制毫无意义


压缩是您唯一的选择。关于邮件列表上的自动触发压缩,已经有一些讨论,但目前只能手动触发。

可以通过此HTTP API在每个数据库上进行压缩:

PUT /{db}/_revs_limit
设置CouchDB将跟踪的文档修订的最大数量,即使在压缩之后也是如此。可以使用要设置为请求正文的限制的标量整数在数据库上设置修订限制


请参见

实际上,每个数据库每文档的转数是有限制的。默认值为1000,但可以通过在数据库的_revs_limit资源中添加一个整数来更改它,例如“curl-X PUT-d50”。您仍然需要压缩以获得磁盘空间,这样就不会真正改变我以前的答案。就问题而言,您只需以较低的转速限制获得更多的磁盘空间即可。我不知道它真正节省了多少空间,低的_revs_限制可能会影响复制;在压缩过程中,以前版本的文件数据始终被丢弃,但存在此类和此类版本的_revs_limit记录除外。