Data Switch Load Balancing for Shared Storage I/O

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Load balancing in data storage systems is inefficient when multiple file servers or hosts access shared storage resources, leading to performance issues due to uncoordinated load distribution across ports and limited network throughput, especially in computational grid environments with virtual machines.

Innovation Solution

A data processing system with a data switch that distributes block I/O requests across operable host adapter ports, configuring the file system to be striped across RAID sets and disk drives, ensuring balanced access and handling sequential requests uniformly across all available paths.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If local load balancing is implemented at each file server or host based on local activity, then individual server performance may be optimized, but global load balancing is not achieved and performance loss occurs when multiple hosts access shared storage

Engineering Contradiction:
Improveindividual server performanceVSAvoidglobal load balancing effectiveness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a storage controller as an intermediary component that sits between multiple hosts and the storage system. This controller receives I/O requests from multiple hosts, maintains a global view of path utilization, and makes coordinated load balancing decisions across all hosts rather than independent local decisions, thereby achieving global load balancing while maintaining individual server performance optimization

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent merges the load balancing functionality from individual host-level controllers into a centralized storage controller that manages load balancing for all hosts simultaneously. This consolidation allows coordinated decision-making across multiple hosts accessing shared storage, resolving the conflict between local optimization and global balancing effectiveness

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If the number of hosts accessing shared storage is increased, then storage system capacity utilization improves, but network throughput becomes limited and performance decreases

Engineering Contradiction:
Improvestorage capacity utilizationVSAvoidnetwork throughput
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent segments the storage access paths into multiple parallel routes through the storage system. By distributing I/O requests across multiple paths rather than concentrating them on a single path, the system can handle increased storage capacity utilization without overloading individual network paths, thereby maintaining throughput performance even as the number of accessing hosts increases

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If manual I/O bandwidth allocation is performed by system administrators, then load distribution can be controlled, but significant load imbalance occurs and application performance becomes erratic

Engineering Contradiction:
Improveload distribution controlVSAvoidapplication performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements self-service load balancing where the storage controller automatically monitors path utilization metrics and makes dynamic routing decisions without requiring manual intervention from system administrators. The controller continuously adjusts I/O request distribution based on real-time path conditions, eliminating load imbalance and performance erratics while maintaining ease of operation through automated management

Inventive Principle:
Principle #25Self-service

4Productivity

If automatic dynamic load balancing is implemented at the file server level, then local I/O requests are distributed across available paths, but coordinated global load balancing is not achieved when multiple file servers access the same storage

Engineering Contradiction:
Improvelocal I/O request distributionVSAvoidglobal path load balancing
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The storage controller performs multiple functions: it handles I/O requests from multiple different hosts, maintains global path utilization state, and makes unified load balancing decisions. This multi-functional approach allows the system to achieve both local request distribution and coordinated global load balancing simultaneously, resolving the contradiction between local optimization and global coordination

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8819344B1Shared storage access load balancing for a large number of hosts
Publication Date: 2014.08.26 EMC IP HLDG CO LLC
  • US8819344B1 patent drawing
  • US8819344B1 patent drawing
  • US8819344B1 patent drawing

AI summary

A data processing system includes host data processors, a data storage system including data storage shared among the host data processors, and a data switch coupling the host data processors to the data storage system. The data storage system has host adapter ports coupled to the data switch. The data switch is programmed for distributing block I/O requests from the host data processors over the operable host adapter ports for load balancing of the block I/O requests among the operable host adapter ports. The shared data storage can be a file system striped across RAID sets of disk drives for load balancing upon disk director ports of the data storage system. The data processing system can be expanded by adding more data storage systems, switches for the additional data storage systems, and switches for routing block I/O requests from the host processors to the data storage systems.