IP Library Granted Patent US 7,539,835
Granted Patent B2
US 7,539,835 · App. 11/099,258 · Granted May 26, 2009

Data storage analysis mechanism

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,539,835
App. No.
11/099,258
Granted
May 26, 2009
Kind
B2
Abstract

System and method for data storage management. Embodiments may be used to perform analysis of disk-based data storage. Embodiments may provide a storage analysis mechanism for estimating storage inventory/availability risk tradeoff for data storage media for an application or group of applications. Embodiments may be used to generate storage inventory information and recommendations or requirements for pooled and/or non-pooled storage. Embodiments may be used to compare pooled storage to non-pooled storage for a plurality of applications in a storage system.

Claims (57)

1. A system, comprising:

a processor; and

a memory comprising program instructions, wherein the program instructions are executable by the processor to:

collect storage demand data for a storage system; and

determine a storage requirement for the storage system, wherein the storage requirement comprises an amount of available storage required to be present in the system at a given future time to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, wherein the storage availability risk level corresponds to a risk of having an inadequate amount of available storage, and wherein the one or more conditions indicated by the storage demand data include demand, wherein the demand indicates an amount of storage consumed by one or more applications in a given tone period.

2. The system as recited in claim 1 , wherein the program instructions are further executable by the processor to determine a storage availability risk level for the storage system given a storage requirement for the storage system under the one or more conditions indicated by the storage demand data.

3. The system as recited in claim 1 , wherein the program instructions are further executable by the processor to determine a storage demand capacity given a storage availability risk level and a storage requirement for the storage system.

4. The system as recited in claim 1 , wherein the program instructions are further executable by the processor to modify a subset of storage system factors according to user input to determine an effect on one or more other ones of the storage system factors.

5. The system as recited in claim 4 , wherein the storage system factors include a storage demand capacity, a storage availability risk level, and the storage requirement.

6. The system as recited in claim 1 , wherein the one or more conditions indicated by the storage demand data further include demand variability, wherein the demand variability indicates the amount of variability in storage consumption by the one or more applications in the given time period.

7. The system as recited in claim 1 , wherein the program instructions are further executable by the processor to determine a storage requirement for the storage system to meet a given storage availability risk level under the one or more conditions indicated by the storage demand data given a periodic review time.

8. The system as recited in claim 1 , wherein the program instructions are further executable by the processor to determine a storage requirement for the storage system to meet a given storage availability risk level under the one or more conditions indicated by the storage demand data given a lead time to acquire new storage.

9. The system as recited in claim 1 , wherein the storage requirement indicates a target storage inventory-on-hand.

10. The system as recited in claim 9 , wherein the program instructions are further executable by the processor to determine a target storage average inventory-on-hand from the target storage inventory-on-hand for a given periodic review time.

11. The system as recited in claim 1 , wherein the storage system is a pooled storage system for a plurality of applications, wherein the determined storage requirement for the pooled storage system to meet the given storage availability risk level under the one or more conditions indicated by the storage demand data is lower than a combined storage requirement for each of the plurality of applications using non-pooled storage.

12. The system as recited in claim 1 , wherein the storage demand data is collected for a plurality of applications, and wherein, to determine a storage requirement for the storage system to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, the program instructions are further executable by the processor to:

determine a non-pooled storage requirement for the plurality of applications in accordance with a non-pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications;

determine a pooled storage requirement for the plurality of applications in accordance with a pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications; and

compare the non-pooled storage requirement and the pooled storage requirement to determine if the pooled storage system or the non-pooled storage system is to be used for the plurality of applications.

13. The system as recited in claim 1 , wherein the storage system is a Storage Area Network (SAN) system.

14. The system as recited in claim 1 , wherein the storage system is a non-pooled storage system for a single application.

15. A system, comprising:

means for collecting storage demand data for a storage system;

means for determining one or more conditions for the storage system from the storage demand data;

means for determining a storage requirement for the storage system wherein the storage requirement comprises an amount of available storage required to be present in the system at a given future time to meet a given storage availability risk level under the one or more conditions indicated by the storage demand data, wherein the storage availability risk level corresponds to a risk of having an inadequate amount of available storage, and wherein the one or more conditions indicated by the storage demand data include demand, wherein the demand indicates an amount of storage consumed by one or more applications in a given time period; and

means for storing said storage requirement.

16. A computer-implemented method, comprising:

collecting storage demand data for a storage system;

determining a storage requirement for the storage system, wherein the storage requirement comprises an amount of available storage required to be present in the system at a given future time to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, wherein the storage availability risk level corresponds to a risk of having an inadequate amount of available storage, and wherein the one or more conditions indicated by the storage demand data include demand, wherein the demand indicates an amount of storage consumed by one or more applications in a given tome period; and

storing said storage requirement;

wherein said collecting, said determining and said storing are performed using a computer system.

17. The method as recited in claim 16 , further comprising determining a storage availability risk level for the storage system given a storage requirement for the storage system under the one or more conditions indicated by the storage demand data.

18. The method as recited in claim 16 , further comprising determining a storage demand capacity given a storage availability risk level and a storage requirement for the storage system.

19. The method as recited in claim 16 , further comprising modifying a subset of storage system factors in response to user input to determine an effect on one or more other ones of the storage system factors, wherein the storage system factors include a storage demand capacity, a storage availability risk level, and the storage requirement.

20. The method as recited in claim 16 , wherein the one or more conditions indicated by the storage demand data include demand variability, wherein the demand variability indicates the amount of variability in storage consumption by the one or more applications in the given time period.

21. The method as recited in claim 16 , further comprising determining a storage requirement for the storage system to meet a given storage availability risk level under one or more conditions indicated by the storage demand data given a periodic review time and a lead time to acquire new storage.

22. The method as recited in claim 16 , wherein the storage requirement indicates a target storage inventory-on-hand.

23. The method as recited in claim 16 , wherein the storage demand data is collected for a plurality of applications, and wherein, in said determining a storage requirement for the storage system to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, the method further comprises:

determining a non-pooled storage requirement for the plurality of applications in accordance with a non-pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications;

determining a pooled storage requirement for the plurality of applications in accordance with a pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications; and

comparing the non-pooled storage requirement and the pooled storage requirement to determine if the pooled storage system or the non-pooled storage system is to be used for the plurality of applications.

24. The method as recited in claim 16 , wherein the storage system is a Storage Area Network (SAN) system.

25. A computer-accessible storage medium storing program instructions, wherein the program instructions are computer-executable to implement:

collecting storage demand data for a storage system;

determining a storage requirement for the storage system, wherein the a storage requirement comprises an amount of available storage required to be present in the system at a given future time to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, wherein the storage availability risk level corresponds to a risk of having an inadequate amount of available storage, and wherein the one or more conditions indicated by the storage demand data include demand, wherein the demand indicates an amount of storage consumed by one or more applications in a given time period; and

storing said storage requirement.

26. The computer-accessible storage medium as recited in claim 25 , wherein the program instructions are further configured to implement determining a storage availability risk level for the storage system given a storage requirement for the storage system under the one or more conditions indicated by the storage demand data.

27. The computer-accessible storage medium as recited in claim 25 , wherein the program instructions are further configured to implement determining a storage demand capacity given a storage availability risk level and a storage requirement for the storage system.

28. The computer-accessible storage medium as recited in claim 25 , wherein the program instructions are further configured to implement modifying a subset of storage system factors in response to user input to determine an effect on one or more other ones of the storage system factors, wherein the storage system factors include a storage demand capacity, a storage availability risk level, and the storage requirement.

29. The computer-accessible storage medium as recited in claim 25 , wherein the one or more conditions indicated by the storage demand data include demand variability, wherein the demand variability indicates the amount of variability in storage consumption by the one or more applications in the given time period.

30. The computer-accessible storage medium as recited in claim 25 , wherein the program instructions are further configured to implement determining a storage requirement for the storage system to meet a given storage availability risk level under one or more conditions indicated by the storage demand data given a periodic review time and a lead time to acquire new storage.

31. The computer-accessible storage medium as recited in claim 25 , wherein the storage requirement indicates a target storage inventory-on-hand.

32. The computer-accessible storage medium as recited in claim 25 , wherein the storage demand data is collected for a plurality of applications, and wherein, in said determining a storage requirement for the storage system to meet a given storage availability risk level under one or more conditions indicated by the storage demand data, the program instructions are further configured to implement:

determining a non-pooled storage requirement for the plurality of applications in accordance with a non-pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications;

determining a pooled storage requirement for the plurality of applications in accordance with a pooled storage system to meet the given storage availability risk level under one or more conditions indicated by the storage demand data for the plurality of applications; and

comparing the non-pooled storage requirement and the pooled storage requirement to determine if the pooled storage system or the non-pooled storage system is to be used for the plurality of applications.

33. The computer-accessible storage medium as recited in claim 25 , wherein the storage system is a Storage Area Network (SAN) system.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 019872 FRAME 979. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE IS SYMANTEC OPERATING CORPORATION. Recorded Mar 5, 2012
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 027819/0462 →
CHANGE OF NAME Recorded Sep 26, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 019872/0979 →