From blocks to rocks
Umesh Maheshwari
Abstract
Zoned namespaces (ZNS) is an emerging storage abstraction with the potential to supersede the conventional block abstraction for flash-based devices. ZNS constrains the writes to be sequential within each zone, thereby avoiding a costly translation in the device. We uncover an additional opportunity afforded by sequential writing: device-level support for storing variable-size pieces of data. We argue that adding this support would be a useful and natural extension of ZNS. First, we identify several cases where file and database systems would benefit from storing variable-size pieces of data. Second, we sketch some simple options for extending the ZNS specification and for implementing the extension within an SSD. Such an extension would add little, if any, cost and complexity, thus preserving the lean characteristic of ZNS.