Citation :
Yes, offline dedup is all manual, depending on users' actions, for a semi-online
dedup, I'm afraid we have to write a script like, write a big file, then fsync
and dedup.
Oh yeah, it'll be later, we got big problems on the metadata reservation,
it's quite easy to run into ENOSPC on metadata, so it's still not ready to
merge and it really needs a number of efforts to fix that problem.
And yes, almost same with ZFS, both are inband block level dedupe,
one difference is that ZFS stores the dedup table in RAM or flash cache, while
btrfs doesn't eat memory like that but writes the dedup tree into disk periodly
just as other metadata.
So right now the performance bottleneck is the metadata reservation not memory,
we performs good when we have enough metadata space.
The performance really depends on the use case, if you have a large number of
duplicate blocks, you can get a fair good result, otherwise it sucks anyway.
thanks,
-liubo
|