我不认为你会遇到 10TB 文件的物理限制,也就是说,我不认为沙发有一些内置的“不能使用大于 X 的文件”,而 X 小于 10TB。
然而。
最大的问题是文件压缩。为了回收空间,Couch 想要压缩文件。这实际上意味着复制文件。因此,至少在某些时候,10TB 需要为 20TB,因为它复制了新副本中的实时数据。
如果您主要是附加到文件,也就是说您只是添加新数据而不是更新或覆盖旧数据,那么这将不是一个问题,因为压缩不会为您带来太多好处。如果您的数据基本上是静态的,那么我将构建文件并最后一次压缩它并完成它。
Couch、Lounge 有“第 3 方”分片解决方案,很受欢迎。
当我接近沙发解决方案时,首先要考虑的是您的查询条件是什么。沙发就是关于观点的,真的。你在看什么样的观点?如果您只是通过一些简单的键(文件名、日期或其他)存储数据,坦率地说,您最好使用文件系统和适当的目录结构。
因此,由于您不打算进行大量阅读,因此我想更多地了解您计划使用的观点。
附加物:
你还没有提到你正在寻找什么样的查询。查询实际上是设计组件,尤其是对于 Couch DB,因为在大型数据集上添加新查询变得越来越困难。
当您说附件时,我假设您指的是 Couch DB 有效负载的附件(因为它可以处理附件)。
因此,综上所述,您可以轻松地创建元数据文档来捕获您想要捕获的所有信息,并且作为该文档的一部分,将路径名添加到存储在文件系统上的实际文件中。这将显着减小 Couch 文件的整体大小,从而使维护更快、更高效。当然,您失去了将其全部放在一个文档中的一些“自包含”部分。