Browse Prior Art Database

Data Reduction Resource Load Balancing in Distributed Storage Systems

IP.com Disclosure Number: IPCOM000248744D
Publication Date: 2017-Jan-05
Document File: 2 page(s) / 36K

Publishing Venue

The IP.com Prior Art Database

Abstract

Disclosed is a novel way to evenly allocate the data reduction resources and compression accelerators for input/output (IO) data requests. This approach permits statistically load- balanced processing and dramatically increases both performance and throughput.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

1

Data Reduction Resource Load Balancing in Distributed Storage Systems

In a typical enterprise storage system, several entity types are participating in the process of the customer input/output (IO) data that are entering and leaving the system. The entities may be hardware entities (e.g., host interfaces, compression accelerators) or software entities (e.g., Interface Nodes, Data Reduction Nodes, etc.). Each entity type has several components/instances spread across the entire system. In order to better utilize the resources, the system must organize the customer IO data processing among all the entities participating in the processing. By that, the processing is statistically load balanced and performance is dramatically increased.

Data Reduction entities are one of the entity types that consume high computing power due to a massive manipulation on read or write IO data. This is because these entities contain complicated algorithms that aim to optimize that data reduction, de-duplication, as well as compression. Therefore, the load balancing among those entities is crucial in order to achieve better performance and high throughput.

Disclosed is a novel way to evenly allocate the data reduction resources and compression accelerators for IO data requests. This approach permits statistically load- balanced processing and dramatically increases both performance and throughput. The allocation avoids dependencies on IO data request patterns (e.g., Virtual Desktop Infrastructure (VDI) scenarios, which it is assumed gain much higher data reduction). This prevents the same data reduction software/hardware resource hammering scenarios.

For simplicity, the IO data processing can be divided into three layers: 1. The IO request layer. This layer serves the entering and leaving IO request processing via the host interfaces.

The load balancing among those software entities is already supported. 2. Data at rest access layer. This layer is responsible for accessing the system storage devices (e.g., disks, flashes,

solid state d...