Data Allocation in a Heterogeneous Disk Array - HDA with Multiple RAID Levels for Database Applications (1510.04868v1)
Abstract: We consider the allocation of Virtual Arrays (VAs) in a Heterogeneous Disk Array (HDA). Each VA holds groups of related objects and datasets such as files, relational tables, which has similar performance and availability characteristics. We evaluate single-pass data allocation methods for HDA using a synthetic stream of allocation requests, where each VA is characterized by its RAID level, disk loads and space requirements. The goal is to maximize the number of allocated VAs and maintain high disk bandwidth and capacity utilization, while balancing disk loads. Although only RAID1 (basic mirroring) and RAID5 (rotated parity arrays) are considered in the experimental study, we develop the analysis required to estimate disk loads for other RAID levels. Since VA loads vary significantly over time, the VA allocation is carried out at the peak load period, while ensuring that disk bandwidth is not exceeded at other high load periods. Experimental results with a synthetic stream of allocation requests show that allocation methods minimizing the maximum disk bandwidth and capacity utilization or their variance across all disks yield the maximum number of allocated VAs. HDA saves disk bandwidth, since a single RAID level accommodating the most stringent availability requirements for a small subset of objects would incur an unnecessarily high overhead for updating check blocks or data replicas for all objects. The number of allocated VAs can be increased by adopting the clustered RAID5 paradigm, which exploits the tradeoff between redundancy and bandwidth utilization. Since rebuild can be carried out at the level of individual VAs, prioritizing rebuild of VAs with higher access rates can improve overall performance.