RS-Pooling: an adaptive data distribution strategy for fault-tolerant and large-scale storage systems Articles uri icon

publication date

  • February 2016

start page

  • 417

end page

  • 437

issue

  • 2

volume

  • 72

International Standard Serial Number (ISSN)

  • 0920-8542

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.

keywords

  • large-scale storage; load balancing; adaptability; redundancy; fault-tolerance; availability; scalability; bins and balls model; cloud storage