Multi-dimensional scheduling in cloud storage systems

The increasing demand for elastic and scalable cloud block storage requires flexible and efficient ways to provision volumes. The scheduling of volume requests in physical storage nodes or virtualized storage pools is usually based on a single criterion, such as the available capacity or the number...

Full description

Saved in:
Bibliographic Details
Published in2015 IEEE International Conference on Communications (ICC) pp. 395 - 400
Main Authors Zhihao Yao, Papapanagiotou, Ioannis, Callaway, Robert D.
Format Conference Proceeding
LanguageEnglish
Published IEEE 01.06.2015
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:The increasing demand for elastic and scalable cloud block storage requires flexible and efficient ways to provision volumes. The scheduling of volume requests in physical storage nodes or virtualized storage pools is usually based on a single criterion, such as the available capacity or the number of volumes per backend. Those properties are exposed to the cloud block storage scheduler through drivers, and may vary based on the workload. Hence, most cloud storage providers refrain from describing Service Level Objectives (SLOs). In this paper, we present the design and implementation of a new scheduling algorithm for block storage systems that has the following advantages over the currently implemented scheduler in OpenStack. It provides guaranteed SLOs even in a dynamic workload, it increases the I/O throughput of the volumes that have been already provisioned in the backend systems, it can be scalable to a higher arrival rate for the volume requests, and finally it can minimize the number of active hosts (or else the energy consumption). The volume placement process is based on an APX-hard multi-dimensional Vector Bin Packing (VBP d ) algorithm. In order to reduce the complexity we propose a heuristic named Modified Vector Best Fit Decreasing (MVBFD). Our scheduler design for block storage systems is based on the principles of the OpenStack's Cinder scheduler; hence it can be deployed with only minor modifications to an OpenStack block storage deployment.
ISSN:1550-3607
1938-1883
DOI:10.1109/ICC.2015.7248353