Virtual Guard
Virtual Guard is a research SMR translation layer that caches a neighboring track so the target track can be updated in place.
Before overwriting a track, Virtual Guard preserves its next track in the shingling direction in persistent cache, unless that neighbor is already protected or the target ends a band. Repeated writes can then reuse the same protection. [1]
Cleaning restores cached tracks to their home bands. It is triggered by free-track or log-distance thresholds, not idle time alone: cleaning too early would remove protection useful for subsequent writes. [1]
The evaluation used a Python disk simulator, unscaled trace addresses, queue depth one and no inter-request delay, with volatile write cache disabled. The tested workloads with spatial locality avoided cleaning; broad synthetic random writes still triggered it. [1]
Relations
Limitations
- Repeated in-place overwrites remain subject to upstream track interference, and hardware validation was left for future work. [1]
Citations
Sources & caveats
- Full HotStorage 2017 paper reviewed. Performance results are simulations, not measurements of a shipping Vguard drive or a Hesela replication.
- Sections 2.1-2.3 define protected neighbors, map persistence and cleaning. Sections 3-4 bound trace replay and future hardware validation.