我试图清楚从重复数据删除表/内存影响的angular度来看,zfs重复数据删除是如何处理池中某些(但不是全部)数据集的情况。 我在2012年发现了FreeBSD邮件列表中的这句话 :
“请注意,只有启用了重复数据删除的文件系统才会参与重复数据删除。重复数据删除=closures的文件系统不会经过重复数据删除。”
例如,假设我们有两个zpools,A和B. Pool A有4个数据集,包含21 TB的数据:
池B有一个包含1 TB数据的数据集,并进行重复数据删除。
很明显,重复数据删除function适用于整个每个池。 不清楚的是,重复数据删除的内存影响是否仅基于重复数据集? 换句话说,所有其他条件相同的情况下,池A和池B的重复数据删除表大小和内存影响是否相似,或者池A的池内的重复数据池大小是否大于池B?
我认为重复数据表必须是相似的(设置池范围,但不影响任何非重复数据集的大小),主要是因为如果它大得多,就相当于强制对整个池进行重复数据删除,而不仅仅是特定的数据集。 但是,我不清楚这是否真的如此。