top | item 42001317

(no title)

tilt_error | 1 year ago

If writing performance is critical, why bother with deduplication at writing time? Do deduplication afterwards, concurrently and with lower priority?

discuss

order

magicalhippo|1 year ago

Keep in mind ZFS was created at a time when disks were glacial in comparison to CPUs. And, the fastest write is the one you don't perform, so you can afford some CPU time to check for duplicate blocks.

That said, NVMe has changed that balance a lot, and you can afford a lot less before you're bottlenecking the drives.

0x457|1 year ago

Because to make this work without a lot of copying, you would need to mutate things that ZFS absolutely does not want to make mutable.

UltraSane|1 year ago

If the block to be written is already being stored then you will match the hash and the block won't have to be written. This can save a lot of write IO in real world use.

klysm|1 year ago

Kinda like log structured merge tree?