automatic block reorganization, BORG, block-reorganization, storage system, I/O
This paper presents the design, implementation, and evaluation of BORG, a self-optimizing storage system that performs automatic block reorganization based on the observed I/O workload. BORG is motivated by three characteristics of I/O workloads: non-uniform access frequency distribution, temporal locality, and partial determinism in non-sequential accesses. To achieve its objective, BORG manages a small, dedicated partition on the disk drive, with the goal of servicing a majority of the I/O requests from within this partition with significantly reduced seek and rotational delays. BORG is transparent to the rest of the storage stack, including applications, file system(s), and I/O schedulers, thereby requiring no or minimal modification to storage stack implementations. We evaluated a Linux implementation of BORG using several real-world workloads, including individual user desktop environments, a web-server, a virtual machine monitor, and an SVN server. These experiments comprehensively demonstrate BORG’s effectiveness in improving I/O performance and its incurred resource overhead.
Bhadkamkar, Medha; Guerra, Jorge; Useche, Luis; Burnett, Sam; Liptak, Jason; Rangaswami, Raju; and Hristidis, Vagelis, "BORG: Block-reORGanization and Self-optimization in Storage Systems" (2007). Electrical Engineering and Computer Science. Paper 74.