我们正在使用GridFS迁移到MongoDB,以将其用作文件存储。
数据库中将存储许多文件,这些文件实际上具有相同的内容(但文件名可能不同)。
在以前的实现中,我们将SQL Server与FILESTREAM一起使用,并实现了自定义机制,仅将唯一的文件内容存储到磁盘,主要目的是节省磁盘空间。
我正在阅读MongoDB(WiredTiger)uses compression中的默认存储引擎,因此我很想假设,无论我们是否存储重复文件,它在磁盘空间方面都没有影响。我说得对吗?
更新:
已经测试了几种压缩方法,我开始发现压缩在处理重复文件方面效率低下(例如:压缩“文件A”和“文件A的副本”,其结果要比单独压缩“文件A”大得多)
我追求的功能可能被称为“重复数据删除”,似乎已经already requested in MongoDB,并被拒绝了:(