ZFS enabling file-level deduplication


This may seem like a dumb question, but I can't seem to find the answer anywhere. I understand that to enable deduplication on a zfs file system I just need to set dedup=on. However, how do I set it to file-level deduplication, instead of block-level deduplication?

Allan Jude mentions this line in his tutorial: Data can be deduplicated on the file, block, or byte level. Let's try it out:

However when you follow the link to Oracle, it specifically mentions:

ZFS provides block-level deduplication because this is the finest granularity that makes sense for a general-purpose storage system.

Perhaps it can only do block-level deduplication.
Do you have a link to this tutorial? I don't recall ever seeing file-level deduplication for ZFS mentioned.

Then again, I haven't paid attention, because what I have seen is plenty of people saying that deduplication is potentially dangerous and unlikely to benefit the vast majority of users.
I haven't seen Allan's tutorial but that quote from the Oracle page is just mentioning the ways that data can be de-duplicated in general. ZFS only does block level de-duplication (or more accurately "zfs record level"), and it can only be enabled/disabled at dataset level.

Personally I've been using ZFS for years and never used it as I don't think it's worth the hassle. I'd rather just make sure my pool is big enough for my data without it, and I already get decent space sacings with lz4 compression (which actually has a performance benefit in a lot of cases unlike dedupe).