- Feb 15, 2014
It's not upcoming, it's been in FreeNAS for a while now. It only gets you so far, though, and is a disaster if the drive's firmware is trash and doesn't know how to deal with unwritten sectors.- Sequential resilver, random I/O is murder on SMR.
I'm going to throw this out there, take it for what it's worth and not as gospel:Work to make ZFS understand HA-SMR / HM-SMR would need to deal with Garbage Collection somehow, to free zones that had most of their data deleted from them. That's either full-on BPR, or an indirection layer (which would grow and grow?) like is used for device removal. Possible additional work, linked on the HiSMRfs paper's page, could be to identify "hot" data, and write that to designated "hot" zones, so that fewer zones see changes.
If you're that concerned about small writes all over the place that you're thinking about garbage collection, no HDD is going to cut it and SSDs are the clear way to go. Once you take that into account, you can reduce your awareness problem to "the allocator needs to know what the layout of the disk is and be able to write to where it wants stuff to go". Since the shingled areas are a couple hundred sectors long, let's say 1 MB per shingled region, all that needs to happen to mitigate 90% of the performance cost is to allocate data with a preference for 1 MB offsets.