Electronic International Standard Serial Number (EISSN)
1573-0484
abstract
Storage pooling is a virtualization technique used in data centers to build upgradeable storage pools and to face up the explosive growth of information. In this technique, a randomized data distribution strategy (DDS) ensures the load balancing when adding new devices to the pool by using reallocation mechanisms. However, when applying fault-tolerant schemes to the storage pools, the system produces r redundant objects from a common data source and DDS must allocate them in different devices, which increases the complexity of the reallocation operations performed during the upgrade procedures. This paper presents RS-Pooling: an adaptive DDS for fault-tolerant and large-scale storage systems. RS-Pooling builds storage pools by grouping devices into disjointed sub-pools and ensures the effectiveness of fault-tolerant schemes by performing the allocation of redundant objects from a common data source in different sub-pools. In RS-Pooling, the first redundant object is allocated in random manner whereas the rest of them are allocated by using a cyclic list of sub-pools, this procedure minimizes the amount of reallocation operations, and fosters load balancing. We performed an emulation-based evaluation of RS-Pooling and a traditional DDS for storage pooling called RUSHp. The evaluation reveals that RS-Pooling improves the time efficiency of look up operations compared to that obtained from RUSHp. The evaluation also shows that, in upgrade procedures and regardless of the initial settlement, RS-Pooling requires significantly less reallocation operations than that of RUSHp for load balancing of fault-tolerant storage pools.