Storage Array Process Correlation for Unused Device Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage environments with multiple storage arrays and hosts, it is difficult to identify which storage devices are no longer in use, making it challenging to free up storage space as non-use does not necessarily indicate that a device is not needed, especially for long-term storage purposes like backups.

Innovation Solution

A method and apparatus that uses an IO driver to collect and correlate process names with storage devices, generating and transmitting process/device correlation information to the storage array, which populates a process correlation data structure with host, device, and application information, allowing for the identification of unused devices and their associated processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If storage devices are retained for long-term storage purposes like backups, then storage capacity is preserved, but it becomes difficult to identify and free up unused storage space

Engineering Contradiction:
Improvestorage capacityVSAvoididentification of unused devices
Core Design Contradiction:
Quantity of substanceVSDifficulty of detecting and measuring

Solution Approach 1:

The system implements feedback by continuously monitoring IO requests from processes and maintaining a correlation data structure that tracks which processes are using which storage devices. This feedback mechanism allows the storage array to automatically identify when devices are no longer needed by detecting the absence of IO requests, thereby resolving the difficulty of detecting unused devices while preserving storage capacity for active use.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces an intermediary correlation data structure that mediates between the storage array and processes. This intermediary maintains process/device correlation information and IO request tracking, enabling the system to identify unused devices without directly interfering with ongoing storage operations or long-term storage purposes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Difficulty of detecting and measuring

If process/device correlation information is collected and tracked, then unused devices can be identified, but system complexity increases

Engineering Contradiction:
Improveidentification of unused devicesVSAvoidsystem complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The system applies self-service by having the IO driver automatically collect and correlate process information with storage device usage without requiring external monitoring tools or complex management systems. The correlation data structure is maintained autonomously through the normal IO request processing flow, reducing overall system complexity while enabling device identification.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The correlation data structure serves multiple functions: it tracks process/device correlations, monitors IO requests, and identifies unused devices. By making this data structure multi-functional, the patent reduces the need for separate complex systems for each function, thereby managing system complexity while achieving comprehensive device identification.

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

3Difficulty of detecting and measuring

If IO drivers collect and forward process information to storage arrays, then device usage can be tracked, but processing overhead increases

Engineering Contradiction:
Improvedevice usage trackingVSAvoidprocessing overhead
Core Design Contradiction:
Difficulty of detecting and measuringVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary action by collecting process information at the IO driver level before storage operations occur. This early collection integrates tracking into the existing IO request flow without requiring separate processing steps, thereby minimizing additional processing overhead while enabling comprehensive device usage tracking.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10360085B1Method and apparatus for identifying process use on storage array resources
Publication Date: 2019.07.23 EMC IP HLDG CO LLC
  • US10360085B1 patent drawing
  • US10360085B1 patent drawing
  • US10360085B1 patent drawing

AI summary

A method and apparatus for identifying process use on storage array resources is provided. A first process (e.g. an IO driver such as an MPIO driver) on each host collects process information of application processes running on that host. The process/device information is forwarded to the storage array where it is added to a process correlation data structure and correlated with assigned devices of the storage array. The host name that provided the process information is also added to the process correlation data structure. A name of the application is also correlated to the process name in the process correlation data structure. The date the device was last used is periodically updated in the process correlation data structure. The process correlation data structure may then be used to identify devices that have not recently been used and to identify the host, application, and process that uses the devices.