Storage QOS Data Collection Module with Time Interval Estimation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face challenges in efficiently collecting and pre-processing Quality of Service (QOS) data to detect abnormal incidents that impact I/O processing, as the data received does not match the requested time intervals, leading to delays in identifying and addressing QOS-related issues.

Innovation Solution

A collection module interfaces with the storage operating system to poll for QOS data and estimates the data for the requested time intervals, providing pre-processed data to the performance manager for analysis, allowing for timely detection of abnormal behavior without requiring extensive pre-processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the storage operating system collects QOS data at arbitrary time intervals, then the data collection is simple, but the data does not match the requested time intervals causing analysis delays

Engineering Contradiction:
Improvedata collection simplicityVSAvoidanalysis delay
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The collection module performs preliminary processing of QOS data by estimating values at requested time intervals before the performance manager analyzes the data. This pre-processing step ensures that the performance manager receives properly formatted data immediately, eliminating analysis delays while keeping the original collection mechanism simple.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the storage system performs extensive pre-processing of QOS data, then the data accuracy for time interval matching improves, but the processing complexity increases

Engineering Contradiction:
Improvetime interval accuracyVSAvoidprocessing complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The invention extracts only the essential pre-processing function of time interval estimation from the overall data processing system. The collection module performs only the necessary estimation of QOS data at requested time intervals, leaving the detailed analysis to the performance manager. This selective extraction achieves time interval accuracy without the complexity of comprehensive pre-processing.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If QOS data is collected without estimation, then the data collection process is fast, but the performance manager cannot efficiently analyze data at expected time intervals

Engineering Contradiction:
Improvedata collection speedVSAvoiddata analysis efficiency
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The collection module performs preliminary estimation of QOS data values at the specific time intervals requested by the performance manager. This preliminary action ensures that when data is collected quickly, it is already formatted and estimated for the correct time intervals, making it immediately ready for efficient analysis without requiring additional processing steps.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9542293B2Method and system for collecting and pre-processing quality of service data in a storage system
Publication Date: 2017.01.10 NETAPP INC
  • US9542293B2 patent drawing
  • US9542293B2 patent drawing
  • US9542293B2 patent drawing

AI summary

Methods and systems for collecting and processing quality of service (QOS) data are provided. A collection module receives the QOS data from a storage operating system for a plurality of storage volumes at time t2, when a process for collecting the QOS data began at time t1 such that t2>t1. The collection module estimates a QOS data value for time t1 and provides the estimated QOS data value to a performance manager that uses the estimated QOS data value for monitoring QOS for the plurality of storage volumes using a plurality of resources for processing input/output (I/O) requests.