在我的系统中,用户可以上传非常大的文件,我需要将其存储在Couchbase中.我不需要这么大的对象来保存在内存中,但是我希望它们始终可以从/向磁盘读/写.这些文件是只读的(从不修改).用户可以上传,删除,下载,但永远不会更新.对于某些技术限制,我的系统无法将这些文件存储在文件系统中,因此必须将它们存储到数据库中.
我做了一些研究,发现一篇文章[1]说将大型对象存储在数据库中通常是一个坏主意,特别是对于Couchbase,但同时提供了一些建议:创建一个RAM配额较低的辅助存储桶,调整价值/完全驱逐政策.我担心的是作者提到的20Mb的限制.我的文件会比那个大得多.
将大文件存储到Couchbase而不将它们保留在内存中的最佳方法是什么?是否可以提高20Mb的限制以防万一?我应该创建一个具有非常低RAM配额和完全驱逐策略的辅助存储桶吗?
[1] http://blog.couchbase.com/2016/january/large-objects-in-a-database
最佳答案 通常,Couchbase工程师建议您不要在Couchbase中存储大文件.相反,您可以将文件存储在某个文件服务器(如AWS或Azure Blob等)上,而是将文件的元数据存储在Couchbase中.