Storage Array Event-Based Data Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in managing data requests, leading to increased computational resources usage and potential duplicative requests from multiple hosts, as they rely on polling mechanisms rather than proactive data distribution.

Innovation Solution

A storage array system that utilizes a message queue to manage requests and responses, identifying when multiple hosts are interested in data changes and proactively distributing unsolicited data to reduce future polling workloads by sending notifications and data to entities interested in data status.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If polling mechanisms are used to manage data requests, then data status can be monitored, but computational resource consumption increases and duplicative requests occur

Engineering Contradiction:
Improvedata status monitoringVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Instead of hosts actively polling the storage array to check for data changes, the system inverts the approach by having the storage array proactively push unsolicited data notifications to hosts when changes occur. This inversion eliminates the need for continuous polling while maintaining reliable data status monitoring.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The storage array pre-processes data changes and prepares unsolicited notifications before hosts would need to poll. By detecting changes and pushing notifications proactively, the system performs the necessary action in advance, preventing hosts from needing to execute polling operations.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple hosts poll for data changes, then data status can be monitored, but network bandwidth usage increases due to duplicative requests

Engineering Contradiction:
Improvedata status monitoringVSAvoidnetwork bandwidth usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system merges the data change notification function into a single proactive push mechanism from the storage array. Instead of multiple hosts independently polling and receiving duplicative responses, one storage array notification service combines all monitoring functions and pushes notifications to interested hosts, eliminating redundant network traffic.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The storage array acts as an intermediary that monitors data changes centrally and distributes notifications to multiple hosts. This intermediary approach replaces the model where multiple hosts independently query the system, consolidating the monitoring function and reducing network bandwidth consumption through a single source of truth.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Use of energy by moving object

If proactive data distribution is implemented, then computational resource consumption decreases, but system complexity increases

Engineering Contradiction:
Improvecomputational resource consumptionVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The storage array performs self-service by autonomously monitoring its own data changes and generating unsolicited notifications without external polling requests. This self-service capability eliminates the need for hosts to expend computational resources on polling while adding proactive notification functionality to the storage array itself.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11061602B2System and method for event based storage management
Publication Date: 2021.07.13 EMC IP HLDG CO LLC
  • US11061602B2 patent drawing
  • US11061602B2 patent drawing
  • US11061602B2 patent drawing

AI summary

A storage array for providing data storage services includes persistent storage and a storage array manager. The persistent storage stores data. The storage array manager obtains a request for solicited data using a request queue corresponding to a requesting host; responds, based on the solicited data, to the request using a response queue corresponding to the requesting host; makes a determination that the request implicates multiple hosts; and in response to the determination: distributes unsolicited data, based on the request, to the multiple hosts using the data stored in the persistent storage.