1

How does CouchDb deal with growing documents that run out of contiguous disk space at the end? And moreover what is CouchDb's strategy for allocating disk space for documents where it has no idea how large they could end up being?

4

1 回答 1

1

CouchDB 使用仅追加策略来写入新数据。这意味着每个新文档“修订版”(请注意,这不是 VCS 的实际修订版)将写入文件末尾,并且之间没有重新分配。当您运行数据库压缩操作时,它会将所有实际修订写入新数据库文件,剥离旧文件并将删除文档作为坟墓标志。压缩所有文档后,它会透明地用压缩的文件替换旧的数据库文件。

您可以在Riyad Kalla关于CouchDB 数据库格式的文章中阅读更详细的说明。此外,您可能对他关于邮件列表的讨论感兴趣。

于 2012-11-11T19:36:17.270 回答