Partitioned Resource Accounting in Distributed File Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed file systems, accurately tracking resource consumption across multiple protocols and clients is challenging, leading to inefficient resource management and performance issues as the system scales, as traditional throttling methods do not provide a precise view of resource usage and may not prioritize certain traffic over others.

Innovation Solution

Implementing a resource accounting system that generates records for each work item, including CPU usage, network bandwidth, and memory usage, and using these records to estimate the impact of workloads and dynamically adjust throttling limits at various layers (cluster, node, and protocol head) to manage resource allocation effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If traditional throttling methods are used to slow down resource consumption, then resource usage is reduced, but accurate tracking of resource consumption is not achieved

Engineering Contradiction:
Improveresource consumptionVSAvoidresource usage tracking accuracy
Core Design Contradiction:
Loss of energyVSMeasurement precision

Solution Approach 1:

The patent segments resource tracking into separate counters for different resource types (I/O operations, network traffic, CPU cycles, memory usage) and different clients. Each counter independently tracks specific resource consumption, enabling precise measurement without affecting overall system performance. This segmentation allows the system to monitor resource usage accurately while maintaining efficient operation.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If throttling is applied to individual users to free up resources, then resource availability for other users improves, but user priority management capability is reduced

Engineering Contradiction:
Improveresource availabilityVSAvoidpriority management flexibility
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic throttling limits that can be adjusted in real-time based on system conditions and user priorities. Administrators can set different priority levels for users, and the system dynamically adjusts resource allocation and throttling behavior accordingly. This dynamic approach maintains resource availability while preserving the ability to prioritize specific users or workflows as needed.

Inventive Principle:
Principle #15Dynamics

3Productivity

If the distributed file system grows in cluster size to handle more clients, then client service capacity increases, but resource competition and performance management complexity increase

Engineering Contradiction:
Improveclient service capacityVSAvoidperformance management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments performance tracking and management into modular counters that can be independently configured and monitored for different resource types and clients. This modular segmentation allows the system to scale to larger clusters with more clients while maintaining manageable complexity through standardized, independent tracking units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements feedback mechanisms where resource consumption data from counters is continuously monitored and used to adjust throttling behavior. This closed-loop feedback system automatically manages resource allocation in response to changing system conditions, reducing the complexity of manual performance management in large-scale deployments.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10142195B1Partitioned performance tracking core resource consumption independently
Publication Date: 2018.11.27 EMC IP HLDG CO LLC
  • US10142195B1 patent drawing
  • US10142195B1 patent drawing
  • US10142195B1 patent drawing

AI summary

Implementations are provided herein for offering partitioned performance within a distributed file system. Core resource consumption per work item can be tracked independently. Discriminative data already known by the file system surrounding the context of the work item can be used to determine a reference resource accounting specification applicable to the work item. When processing the work item, a detailed resource record can be generated that inventories the resources used in processing the work item. The resource record associated with the work item can be recorded into a set of resource accounting tokens that track activity resource consumption at a granular level. A universal table of resource accounting tokens can be dynamically updated upon the processing of work items and generation of associated resource records throughout the distributed file system.