IP Library › Granted Patent US 9,075,851
Granted Patent B2
US 9,075,851 · App. 10/731,790 · Granted Jul 7, 2015

Method and apparatus for data retention in a storage system

Inventors: Michael Kilian (Harvard, MA); Mark Avery (Weston, MA); Stephen Todd (Shrewsbury, MA); Tom Teugels (Schoten, BE); Francis Martens (Berchem, BE); Jan Bruyndonckx (Mechelen, BE)
Assignee: EMC Corporation
G06F17/30551
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 9,075,851
App. No.
10/731,790
Filed
Dec 9, 2003
Granted
Jul 7, 2015
Kind
B2
Art Unit
2166
USPC
707/205
Abstract

A system and method are provided for retention of data on a storage system. An application program provides the storage system with data to be stored on the storage system. The application program also provides the storage system with a retention period that indicates a period of time for which the data may not be deleted. When the storage system receives a request to delete the data, it first evaluates the retention period associated with that data to determine if the retention period has expired. If the retention period has not expired, the storage system denies the request to delete the data.

Claims (51)

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

(A) receiving a request, from the host, to delete a first unit of content stored on the storage system, wherein a retention period for the first unit of content is stored in the first unit of content, wherein the request identifies the first unit of content using a first content address generated, at least in part, from the retention period and at least some other content in the first unit of content such that, if the retention period is modified, a second unit of content with a second content address is generated and stored in a different location from the first unit of content;

(B) determining whether the retention period for the first unit of content has expired;

(C) when it is determined in the act (B) that the retention period for the first unit of content has not expired, denying the request to delete the first unit of content; and

(D) when it is determined in the act (B) that the retention period for the first unit of content has expired, directly deleting the first unit of content in response to the request.

2. The method of claim 1 , wherein the acts (A), (B) and (C) are performed by the storage system.

3. The method of claim 1 , further comprising an act (D) of, prior to performing the acts (A), (B) and (C), receiving information specifying the retention period for the first unit of content.

4. The method of claim 1 , further comprising acts of, prior to performing the acts (A), (B) and (C):

(D) receiving the first unit of content at the storage system; and

(E) writing the first unit of content to the storage system.

5. The method of claim 4 , further comprising acts of, prior to performing the acts (A), (B) and (C):

(F) receiving information specifying the retention period for the unit of content along with the first unit of content; and

(G) writing the information specifying the retention period to the storage system.

6. At least one non-transitory computer readable storage medium encoded with instructions that, when executed on a computer system, perform a method for use in the computer system, wherein the computer system comprises at least one host and at least one storage system, and wherein the method comprises acts of:

(A) receiving a request, from the host, to delete a first unit of content stored on the storage system, wherein a retention period for the first unit of content is stored in the first unit of content, wherein the request identifies the first unit of content using a content address generated, at least in part, from the retention period and at least some other content in the first unit of content such that, if the retention period is modified, a second unit of content with a second content address is generated and stored in a different location from the first unit of content;

(B) determining whether the retention period for the first unit of content has expired;

(C) when it is determined in the act (B) that the retention period for the first unit of content has not expired, denying the request to delete the first unit of content; and

(D) when it is determined in the act (B) that the retention period for the first unit of content has expired, directly deleting the first unit of content in response to the request.

7. The at least one non-transitory computer readable storage medium of claim 6 , wherein the acts (A), (B) and (C) are performed by the storage system.

8. The at least one non-transitory computer readable storage medium of claim 6 , further comprising an act (D) of, prior to performing the acts (A), (B) and (C), receiving information specifying the retention period for the first unit of content.

9. The at least one non-transitory computer readable storage medium of claim 6 , further comprising acts of, prior to performing the acts (A), (B) and (C):

(D) receiving the first unit of content at the storage system; and

(E) writing the first unit of content to the storage system.

10. The at least one non-transitory computer readable storage medium of claim 9 , further comprising acts of, prior to performing the acts (A), (B) and (C):

(F) receiving information specifying the retention period for the first unit of content along with the first unit of content; and

(G) writing the information specifying the retention period to the storage system.

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

at least one storage device, comprising at least one physical storage medium to store data received from the at least one host; and

at least one controller that:

receives a request, from the host, to delete a first unit of content stored on the storage system, wherein a retention period for the first unit of content is stored in the first unit of content, wherein the request identifies the first unit of content using a content address generated, at least in part, from the retention period such that, if the retention period is modified, a second unit of content with a second content address is generated and stored in a different location from the first unit of content;

determines whether the retention period for the unit of content has expired;

when it is determined that the retention period for the unit of content has not expired, denies the request to delete the unit of content and at least some other content in the first unit of content; and

when it is determined that the retention period for the first unit of content has expired, directly deletes the first unit of content in response to the request.

12. The storage system of claim 11 , wherein the at least one controller receives information specifying the retention period for the first unit of content.

13. The storage system of claim 11 , wherein the at least one controller receives the first unit of content and writes the first unit of content to the at least one storage device.

14. The storage system of claim 11 , wherein the at least one controller receives information specifying the retention period for the first unit of content along with the first unit of content and writes the information specifying the retention period to the at least one storage device.

15. The storage system of claim 11 , wherein:

a third unit of content is stored on the storage system; and

a reference to the third unit of content is stored in the first unit of content.

16. The storage system of claim 15 , wherein the controller is configured not to delete the third unit of content while the reference to the third unit of content is stored in the first unit of content.

17. The storage system of claim 16 , wherein:

the controller executes a garbage collector that deletes units of content that are not referenced by other units of content; and

the garbage collector is configured not to delete the third unit of content while the reference to the third unit of content is stored in the first unit of content.

18. The storage system of claim 15 , wherein the controller denies every request from the host to delete the third unit of content.

19. The storage system of claim 15 , wherein:

the retention period is a first retention period;

a fourth unit of content is stored on the storage system, wherein a second retention period for the fourth unit of content is stored in the fourth unit of content; and

a reference to the third unit of content is stored in the fourth unit of content.

20. The storage system of claim 11 , wherein:

the first unit of content is a content descriptor file; and

one or more references to blobs are stored in the content descriptor file.

Assignments (11)
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: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2004
From: KILIAN, MICHAEL; AVERY, MARK; TODD, STEPHEN; TEUGELS, TOM; MARTENS, FRANCIS; BRUYNDONCKX, JAN
To: EMC CORPORATION
Reel/Frame 015633/0724 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2003
From: KILLIAM, MICHAEL; AVERY, MARK; TODD, STEPHEN; TEUGELS, TOM
To: EMC CORPORATION
Reel/Frame 014786/0500 →
Continuity (1)
Related Publication 20050125411A1 · Jun 9, 2005