有没有一种很好的方法可以在这些大型对象库中找到重复的块,或者就地压缩大型数据集?我们可以用某种符号链接替换重复的文件吗?
存储提供商(至少AWS,Google和Microsoft)不对blob对象执行重复数据删除和/或压缩.这导致不可预测的延迟,增加的抖动和增加的RAM消耗.并不是说在这种情况下实现良好的计费策略是不可能的,并且跨多个服务器/可用区域重复删除对象是一项巨大的技术挑战.您可以在最后实施压缩.重复数据删除更难,因为您需要使用哈希表维护中间件等等.
另一种方法可能是在您的EC2实例上使用ZFS而不是S3.您可以附加EBS卷并将其作为ZFS卷安装,ZFS具有内置的压缩和重复数据删除功能.如果您需要在多个EC2实例上使用这些文件/对象,则始终可以将ZFS导出和导入为NFS共享.再一次,重复数据删除将需要额外的RAM.
精彩评论