是否有任何商业IaaS对象存储(S3、Azure Blobs等)避免多次收费存储重复数据(相同的文件,或部分文件)?例如,我们有一个15 TB的tweet数据集,我们的一个团队希望复制一份,然后对数据做一些修改。30 TB的储藏室要收费吗?
是否有一种好的方法可以在这些大型对象存储中找到重复块,或者就地压缩大型数据集?我们能用某种符号链接替换重复的文件吗?
发布于 2016-12-22 19:12:07
存储提供商(至少AWS、Google和Microsoft)不会对blob对象进行重复和/或压缩。这会导致不可预测的延迟,增加抖动和增加内存消耗。这并不是说在这种情况下不可能实现良好的计费策略,并且在多个服务器/可用性区域之间重复对象是一个巨大的技术挑战。
您可以在您的端实现压缩。去重复很难,因为您需要使用哈希表来维护中间件,等等。
另一种方法可能是在EC2实例上使用ZFS而不是S3。您可以附加EBS卷并将它们作为ZFS卷挂载,并且ZFS具有内置的压缩和去重复功能。如果在多个EC2实例上需要这些文件/对象,则始终可以作为NFS共享导出和导入ZFS。重复再一次需要额外的RAM。
发布于 2016-12-30 09:56:45
您可以使用现场去重复,这可以通过一些备份解决方案(例如https://www.veeam.com/hyper-v-vmware-backup-deduplication-compression.html )来执行,并将数据压缩到云中,从而节省了网络带宽。它可能是有用的,特别是如果及时恢复是至关重要的。
我们已经有相当多的VM运行在我们的生产atm,并使用Veeam和星风,所以我认为这是一个类似的情况。还测试了其他解决方案,例如MS和Backup,但是Veeam显示了更好的结果。
https://serverfault.com/questions/822312
复制相似问题