查看数据集上的ZFS重复数据删除率


3

我有一个由多个数据集组成的容器,其中只有一个被配置为使用重复数据删除。

如何查看此数据集的比率?我得到了整个游泳池的1.00倍的比例,但我想这只是报告坦克中的比例,这没什么(我只有坦克中的数据集)。

Answers:


7

您所指的坦克实际上是一个ZFS池,您的数据集是池中的ZFS文件系统。

ZFS重复数据删除具有池范围,您无法查看单个文件系统的重复数据删除率。

如果您为已包含数据的池启用重复数据删除,则现有数据不会自动扣除,您的比率仍为1.00倍。只会扣除新写入的数据,然后您可能会看到比率增加。


但是我只为池中的“文件系统”启用了它,如果它具有池范围,那是否意味着它对整个池有效?当我创建数据集时,我只期望数据集会被重复数据删除,所以我不应该只能看到数据集的比率吗?
deed02392

1
为了改进重复数据删除,ZFS不仅限于在一个文件系统中复制块。相反,它看起来整个池。如果未对特定文件系统启用重复数据删除,则即使存在重复块,也会执行块写入而不通过重复数据删除管道。
Mike Fitzpatrick

但是,如果启用它的文件系统中确实存在重复的块,那么如果仅用于该文件系统,这肯定会产生大于一的重复数据删除率吗?为什么我不能只看到该文件系统的比例呢?
deed02392

1
我无法回答,也许这是一个设计决定,我不确定。重复数据删除会对报告的磁盘使用量和可用空间产生副作用,这些在考虑整个池而不仅仅是其中的文件系统时更有意义。参考 ZFS Dedup FAQ Deduplicated space accounting is reported at the pool level. You must use the zpool list command rather than the zfs list command to identify disk space consumption when dedup is enabled.
Mike Fitzpatrick

你也可以使用 zdb -S 在您的池上获得重复数据删除率的粗略估计,就好像它已被应用一样。有关更多信息,请参阅Constantin Gonzalez博客上有关重复数据删除的优秀文章: constantin.glez.de/blog/2011/07/zfs-dedupe-or-not-dedupe
user121391
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.