限制Couchdb中的修订数量

Anv*_*var 7 couchdb

有没有办法限制couchdb中的修订数量?在配置文件中的硬限制的一些东西.我知道我可以定期压缩数据库,但不知何故,它感觉像是一个黑客.有没有更好的办法?

Mat*_*all 8

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

压缩是您唯一的选择.有一些关于邮件列表上自动触发压缩的讨论,但它现在只能手动触发.

  • 实际上,每个文档限制有*每个数据库转速*.默认值为1000,但可以通过PUT将整数更改为数据库的_revs_limit资源来更改,例如"curl http:// localhost:5984/test/_revs_limit -X PUT -d 50".你仍然需要压缩以获得磁盘空间,因此就问题而言,它并没有真正改变我之前的答案,你只需要用更低的_revs_limit获得更多的磁盘空间.我不知道它真正节省了多少空间,而低_revs_limit可能会影响复制. (10认同)
  • 请注意,此_revs_limit仅影响压缩后存储的修订*元数据*; 除了此类修订的*存在*的_revs_limit记录之外,在压缩期间始终丢弃来自先前修订的文档数据. (3认同)