IP Library Granted Patent US 7,430,645
Granted Patent B2
US 7,430,645 · App. 10/761,826 · Granted Sep 30, 2008

Methods and apparatus for extending a retention period for data in a storage system

Assignee: EMC Corporation
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,430,645
App. No.
10/761,826
Filed
Jan 21, 2004
Granted
Sep 30, 2008
Kind
B2
Examiner
DARE, RYAN A
Art Unit
2186
USPC
711/161
Abstract

One embodiment is a method and apparatus for modifying retention periods in a storage system, in which previously defined retention periods for units of data may be reduced. In another embodiment, the retention period of a unit of data may be modified in response to the occurrence of an event by renewing previously defined retention periods until the occurrence of the event is detected. If the occurrence of the event is detected, a retention period associated with that event may be established for the unit of data. In yet another embodiment, retention classes are used to define retention periods for units of data so that the retention period of a unit of data may be modified without modifying the unit of data itself. In a further embodiment, a request to the storage system to reduce a retention period includes authentication information that the storage system may use to verify the request.

Claims (57)

1. A method of processing data in a computer system comprising at least one host and at least one storage system, the method comprising acts of:

(A) sending to the at least one storage system, from the at least one host, a request to store a unit of data, the request including a retention period for the unit of data;

(B) after expiration of at least some of the retention period, determining if a specified event has occurred;

(C) when it is determined in the act (B) that the specified event has not occurred, extending the retention period for the unit of data; and

(D) repeating the acts (B) and (C) until it is determined in the act (B) that the specified event has occurred.

2. The method of claim 1 , wherein the method is for retaining the unit of data for a specified period after the occurrence of an event, and wherein the method further comprises an act of:

(E) when it is determined in the act (B) that the specified event has occurred, extending the retention period for the unit of data for a length of time associated with the specified period after the occurrence of the event.

3. The method of claim 1 , wherein the method is for retaining the unit of data for a specified period after the occurrence of an event, and wherein the method further comprises an act of:

(E) when it is determined in the act (B) that the specified event has occurred, extending the retention period for the unit of data so that the retention period expires the specified period after the occurrence of the event.

4. The method of claim 2 , wherein the act (C) further comprises an act of:

(C1) extending the retention period for the unit of data for an extended period that is less than or equal to the specified period for the unit of data to be retained after the occurrence of the event.

5. The method of claim 4 , wherein the act (D) comprises an act of, each time the act (C) is performed, extending the retention period by a same length of time.

6. The method of claim 1 , wherein the at least one storage system stores at least two different types of units of data including a blob of data and a content descriptor file (CDF), each blob having at least one corresponding CDF that includes metadata relating to the blob, wherein a retention period of a blob is the retention period of its corresponding at least one CDF, wherein the unit of data is a blob, wherein the act (A) comprises establishing the retention period in a first CDF that corresponds to the blob, and wherein the act (C) further comprises:

creating a second CDF that corresponds to the blob and has a retention period that expires after the retention period of the first CDF.

7. A method of ensuring that a unit of data, stored on a computer system, is retained until a specified period after the occurrence of an event, the computer system comprising at least one host and at least one storage system that stores the unit of data, the method comprising acts of:

(A) establishing an initial retention period for the unit of data, wherein the initial retention period is less than or equal to the specified period;

(B) after the expiration of at least some of the initial retention period, determining whether the specified event has occurred;

(C) when it is determined in the act (B) that the specified event has not occurred, performing acts of:

(C1) extending the retention period for the unit of data for an extended period that is less than or equal to the specified period; and

(C2) after the expiration of at least some of the extended retention period, determining whether the specified event has occurred and when the specified event has not occurred, returning to the act (C1), and when the specified event has occurred, proceeding to the act (D); and

(D) when it is determined in either of the acts (B) or (C2) that the specified event has occurred at a time, extending the retention period so that the retention period expires the specified period after the time at which the event occurred.

8. At least one computer readable medium encoded with instructions that, when executed on a computer system perform a method of processing data, the computer system comprising at least one host and at least one storage system, the method comprising acts of:

(A) sending to the at least one storage system, from the at least one host, a request to store a unit of data, the request including a retention period for the unit of data;

(B) after expiration of at least some of the retention period, determining if a specified event has occurred;

(C) when it is determined in the act (B) that the specified event has not occurred, extending the retention period for the unit of data; and

(D) repeating the acts (B) and (C) until it is determined in the act (B) that the specified event has occurred.

9. The at least one computer readable medium of claim 8 , wherein the method is for retaining the unit of data for a specified period after the occurrence of an event, and wherein the method further comprises an act of:

(E) when it is determined in the act (B) that the specified event has occurred, extending the retention period for the unit of data for a length of time associated with the specified period after the occurrence of the event.

10. The at least one computer readable medium of claim 8 , wherein the method is for retaining the unit of data for a specified period after the occurrence of an event, and wherein the method further comprises an act of:

(E) when it is determined in the act (B) that the specified event has occurred, extending the retention period for the unit of data so that the retention period expires the specified period after the occurrence of the event.

11. The at least one computer readable medium of claim 9 , wherein the act (C) further comprises an act of:

(C1) extending the retention period for the unit of data for an extended period that is less than or equal to the specified period for the unit of data to be retained after the occurrence of the event.

12. The at least one computer readable medium of claim 11 , wherein the act (D) comprises an act of, each time the act (C) is performed, extending the retention period by a same length of time.

13. The at least one computer readable medium of claim 8 , wherein the at least one storage system stores at least two different types of units of data including a blob of data and a content descriptor file (CDF), each blob having at least one corresponding CDF that includes metadata relating to the blob, wherein a retention period of a blob is the retention period of its corresponding at least one CDF, wherein the unit of data is a blob, wherein the act (A) comprises establishing the retention period in a first CDF that corresponds to the blob, and wherein the act (C) further comprises:

creating a second CDF that corresponds to the blob and has a retention period that expires after the retention period of the first CDF.

14. At least one computer readable medium encoded with instructions that, when executed on a computer system perform a method of ensuring that a unit of data, stored on the computer system, is retained until a specified period after the occurrence of an event, the computer system comprising at least one host and at least one storage system that stores the unit of data, the method comprising acts of:

(A) establishing an initial retention period for the unit of data, wherein the initial retention period is less than or equal to the specified period;

(B) after the expiration of at least some of the initial retention period, determining whether the specified event has occurred;

(C) when it is determined in the act (B) that the specified event has not occurred, performing acts of:

(C1) extending the retention period for the unit of data for an extended period that is less than or equal to the specified period; and

(C2) after the expiration of at least some of the extended retention period, determining whether the specified event has occurred and when the specified event has not occurred, returning to the act (C1), and when the specified event has occurred, proceeding to the act (D); and

(D) when it is determined in either of the acts (B) or (C2) that the specified event has occurred at a time, extending the retention period so that the retention period expires the specified period after the time at which the event occurred.

15. A host computer for use in a computer system that includes the host computer and at least one storage system, the host computer comprising:

first means for sending to the at least one storage system, a request to store a unit of data, the request including a retention period for the unit of data;

second means for determining, after expiration of at least some of the retention period, if a specified event has occurred;

third means for extending the retention period for the unit of data when it is determined that the specified event has not occurred; and

fourth means for repeatedly instructing the second and third means to determine whether the specified event has occurred and for extending the retention period until it is determined that the specified event has occurred.

16. The host computer of claim 15 , wherein the at least one storage system retains the unit of data for a specified period after the occurrence of an event, and the host computer further comprises:

means for extending the retention period for the unit of data for a length of time associated with the specified period after the occurrence of the event, when it is determined that the specified event has occurred.

17. The host computer of claim 15 , wherein the at least one storage system retains the unit of data for a specified period after the occurrence of an event, and the host computer further comprises:

means for extending the retention period for the unit of data so that the retention period expires the specified period after the occurrence of the event, when it is determined that the specified event has occurred.

18. The host computer of claim 16 , further comprising:

means for extending the retention period for the unit of data for an extended period that is less than or equal to the specified period for the unit of data to be retained after the occurrence of the event.

19. The host computer of claim 18 , further comprising means for extending the retention period by a same length each time the retention period is extended for the unit of data by the third means.

20. The host computer of claim 15 , wherein the at least one storage system stores at least two different types of units of data including a blob of data and a content descriptor file (CDF), each blob having at least one corresponding CDF that includes metadata relating to the blob, wherein a retention period of a blob is the retention period of its corresponding at least one CDF, wherein the unit of data is a blob, wherein the means for sending the request to store the unit of data further comprise means for establishing the retention period in a first CDF that corresponds to the blob, and wherein the means for extending the retention period for the unit of data further comprises:

means for creating a second CDF that corresponds to the blob and has a retention period that expires after the retention period of the first CDF.

21. The host computer of claim 15 , in combination with the at least one storage system.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2004
From: TODD, STEPHEN; KILIAN, MICHAEL
To: EMC CORPORATION
Reel/Frame 014919/0110 →
Continuity (1)
Related Publication 20050160227A1 · Jul 21, 2005