top | item 40725118

(no title)

lvogel | 1 year ago

> Ultimately, a reliable non-volatile write cache, sized for your workload is the answer.

Author here, I agree! It's quite sad that we need such an involved solution to offset the inherent complexity of the flash medium (latency spikes, erase blocks, ...). We nearly had the perfect solution with Optane[1]: 100ns latency, instantly persisted writes and all that good stuff.

I'm still not over Intel killing it while I did my PhD on it.

[1] https://en.m.wikipedia.org/wiki/3D_XPoint

discuss

order

hi-v-rocknroll|1 year ago

More industry experience in real world would've made it clear that they're totally useless for datacenters where there are rarely power outages with many 9's of electrical uptime measured in months or years.

UPSes and BBWC evolved to bring reliability to production gear running in non-DC environments when mainline servers used spinning rust without backup power. Today, it's largely a vendor up-charge.

Write barriers cause far too much latency in practice on servers in tier IV datacenters, so they're almost always turned off except for a tiny fraction of systems.

There has never been a "perfect" or a universal solution, only a risk budget and suitability for a specific use-case.

jakedata|1 year ago

Write barriers aren't just for durability - they also can even out major latency spikes when bloated buffers ultimately must be flushed. Database, filesystem, RAID, device, flash management and individual chips all become saturated at some point. Managing performance at the database engine layer gives you visibility into the issue at a high level as opposed to rolling merrily along until commits start taking 2000 ms. As an example, ZFS is terrifyingly unpredictable at high loads.

otterley|1 year ago

Power availability isn't the only concern when it comes to taking the risk of async writes. Kernel panics will cause unflushed writes to be lost, and storage hardware can experience gray or total failures, sometimes completely suddenly.

throwaway81523|1 year ago

There used to be battery backed ramdisks with SATA interfaces. Are they history now? These days it would be NVMe or whatever, of course.

jakedata|1 year ago

Radian makes ultracapacitor backed RAM cards with flash backup that appear to be NVMe devices. They do a nice job for things like Write Ahead Logs and ZFS ARC/ZIL. They offer effectively unlimited write endurance with a tradeoff of cost and capacity.