If you’re reading this thread because of my impeccable click-bait game… that just proves I’m good at it! Spare me your jealousy.
On the iXsystems announcement page for Fast Dedup, it includes a new “feature” that supposedly makes the Fast Dedup Table (FDT) notably more efficient:
“Favor”?
“Potential”?
That implies some sort of automation or prediction, such as entirely skipping a new block of data from having its hash written to the table.
But the only reference to pruning I could find is a new command that will be available in OpenZFS: zpool ddtprune
This implies a manually-invoked command that simply removes “single-hit” hashes from the table.
Is there anything happening under-the-hood with Fast Dedup, in which it will actually skip new blocks that don’t have “dedup potential”?
This raises another question:
What if someone “prunes” their Fast Dedup Table, removing all single-hit hashes, but then later such blocks are indeed “dedup-able”? “Too bad, so sad?” The existing blocks (whose hashes were previously removed from the table) will forever consume the extra amount of space that could have been “zero” had they remained part of the dedup table?