Log-structured Write-Back Cache (LSWBC) is a product of evolution of Log-Structured File System (LSFS), initially designed to a) eliminate “I/O Blender” by turning random writes into 100% sequential writes, and b) ensure a full bandwidth of parity RAIDs (RAID5/6/50 & 60) for any workload.
Unfortunately, LSFS created more issues than it solved by doing 100% read randomization for ANY workload, increasing I/O latency. It’s being phased out by LSWBC, which combines log-structured cache in the front and “flat” storage in the back.
To find out how StarWind logically developed the current LSWBC feature, read more about its predecessor LSFS here
Traditional caching methods do not work as they should under high virtualized workloads. The thing is, the overall data flow from your virtual machines is highly randomized. RAM gets that data and addresses it to the underlying storage without any optimization. Disk-based storage, in its turn, does not like random writes at all. You see, disk latency increases when the data is flushed randomly from RAM to the underlying storage. And, as a result, your performance-hungry applications do not work as fast as you want them! Sure, you can invest in an all-flash storage to have them running as fast as you dream, but what if you never need all that jaw-dropping performance after all?
Data loss in the event of a blackout is another drawback of traditional caching. Users face a dilemma of traditional cache retention policies: rocket-fast cache wiping out your data in case of a blackout, or resilient one without performance gain. Obviously, your applications need something better than just good old write-back or write-through caching.
Apart from data loss, full sync is another thing you should worry about in the event of a blackout. Post-blackout recovery process requires lengthy synchronization and error checking of the entire storage pool. Why should you ever bother about that? You see, while storage pool is synchronizing, your applications do not perform as you want them due to immense loads on the system induced by sync. Furthermore, there’s a lack of resiliency that brings a good risk of the complete failure and data loss.
With LSWBC, we overcome traditional caching schemes limitations and tailor cache to virtualized workload needs. We improve the overall user experience with industry-proven RAM and flash caching by bringing Log Structuring into the play. StarWind VSAN writes data to the circular buffer in RAM, sequentializes its flow, and gradually flushes it to the log disk, a device formed out of a tiny portion of your storage. In its turn, the log disk sends data to the underlying storage where it eventually resides. In this way, Log-structured Write-Back Cache (LSWBC) ensures high application performance even for highly randomized workloads.
By developing a unique caching architecture, we overcome the risk of data loss in an event of blackout. Due to keeping a copy in the log disk and the fact that data retention time in RAM is so momentary, there’s basically no data to lose! So, even if the cluster goes down, your precious data won’t be lost.
Another nice thing about LSWBC: there’s no need to wait for a full synchronization after blackouts. LSWBC allows tracking all the data generated by the virtual machines. If all of a sudden a node or entire cluster goes down, log disk will be the place where nodes look through to restore data integrity. So, there’s no full sync needed as nodes just quickly match the log disks and share only the data needed to restore its integrity. As a result, LSWBC makes recoveries faster and dramatically simplifies cluster maintenance
Log-structured Write-Back Cache ensures high performance and data integrity for your virtualized applications! By streamlining the way data is cached, LSWBC improves performance with the mere flash storage requirements. The feature removes manual recovery requirement and almost zeroes out the cluster integrity restoration time.