Storage Node Load Balancing via Replication Schedule Overlap

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data replication systems face load imbalance issues due to inaccurate calculation of processing loads across storage nodes, leading to inefficient task assignment and increased load on high-loaded nodes.

Innovation Solution

A system that calculates an estimated processing time based on past execution history and schedules replication tasks by selecting nodes with minimal overlapping times, ensuring accurate load distribution and reducing imbalance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the proxy server calculates processing load based on simple metrics, then the calculation is fast and simple, but the accuracy of load calculation decreases leading to poor task assignment

Engineering Contradiction:
Improveaccuracy of load calculationVSAvoidcomplexity of load calculation
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system pre-calculates and stores processing time periods for various tasks in a database before actual task assignment occurs. This preliminary preparation of historical execution data enables accurate load calculation when tasks need to be assigned, without performing complex real-time analysis.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system collects actual execution times of previously assigned tasks and uses this feedback to continuously improve future task assignment decisions. By referencing past performance data, the system learns from actual outcomes and adjusts its load calculation accuracy over time.

Inventive Principle:
Principle #23Feedback

2Productivity

If processing is assigned to storage nodes without considering replication schedules, then task assignment is simple, but load imbalance increases due to inaccurate load calculation

Engineering Contradiction:
Improvesystem performanceVSAvoidaccuracy of processing load calculation
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system merges task assignment decisions with replication schedule considerations by calculating the sum of overlapping times between estimated processing time periods and recorded schedules. This integration ensures that both task execution and replication activities are coordinated to optimize overall system performance.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system changes the parameter used for load calculation from simple metrics to the sum of overlapping times between processing tasks and replication schedules. This parameter transformation provides a more accurate representation of actual system load, enabling better task assignment decisions.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If the system considers replication schedules for task assignment, then load distribution accuracy improves, but the complexity of task management increases

Engineering Contradiction:
Improveaccuracy of load calculationVSAvoidcomplexity of task management
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

Replication schedules are predetermined and recorded in advance before task assignment occurs. By preparing replication schedules beforehand, the system reduces the complexity of real-time decision-making while maintaining accurate load calculation based on these pre-established timelines.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10789101B2Information processing apparatus, processing distribution method, and storage medium
Publication Date: 2020.09.29 FUJITSU LTD
  • US10789101B2 patent drawing
  • US10789101B2 patent drawing
  • US10789101B2 patent drawing

AI summary

A non-transitory computer-readable storage medium storing a program that causes a computer to execute a process, the process includes calculating, when a request for a processing for a plurality of apparatuses is received, an estimated processing time period that is an estimated value of a time period taken to perform the processing based on a processing time period in a past execution history of the processing; referring to a time schedule that records a schedule of processing including replication for each of the plurality of apparatuses; and selecting one of the plurality of apparatuses as a target apparatus for performing the requested processing based on a sum total of overlapping times between the calculated estimated processing time period and the recorded schedule.