IP Library › Granted Patent US 10,303,662
Granted Patent B1
US 10,303,662 · App. 14/871,109 · Granted May 28, 2019

System and method for efficiently measuring physical space for an ad-hoc subset of files in protection storage filesystem with stream segmentation and data deduplication

Inventors: Guilherme Menezes (Santa Clara, CA); Fabiano Botelho (San Ramon, CA); Abdullah Reza (Santa Clara, CA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F16/1844G06F11/1451G06F11/1456G06F11/1464G06F16/125G06F16/9535G06F2201/84
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 10,303,662
App. No.
14/871,109
Filed
Sep 30, 2015
Granted
May 28, 2019
Kind
B1
Art Unit
2162
USPC
707/654
Abstract

In one example, a method for processing data includes receiving information that identifies an ad-hoc group of size ‘n’ of files F 1 . . . F n , each file F including a respective segment set S, and then sampling a representation of each unique segment in the segment set S to obtain a sampled unique segment count for each file F. A unique segment count is then obtained for each file F by applying a sampling ratio R to each sampled unique segment count, and an average segment size for each file F is determined. Next, a physical space measurement is generated for each file F based on the average segment size and the unique segment count, and then a total physical space measurement p is generated based on the individual physical space measurements for each file F.

Claims (35)

1. A method, comprising:

measuring an amount of physical storage space used, or expected to be used, by a dataset that comprises an ad-hoc group of size ‘n’ of files F 1 . . . F n , wherein measuring the amount of physical storage space comprises:

receiving information that identifies the ad-hoc group of size ‘n’ of files F 1 . . . F n , each file F including a respective segment set S;

creating a bloom filter with bitmap B F for each of the files F, and sampling a representation of each unique segment in the segment set S by sampling a fingerprint of each unique segment in the segment set S, wherein each sampled fingerprint corresponds to a unique segment physical size, and adding the unique segment physical sizes to the corresponding bloom filter to obtain a sampled unique segment count for each file F;

compressing and caching each of the bloom filters, wherein the bloom filters are compressed such that the respective compressed sizes are proportional to the size of an associated file;

obtaining a unique segment count for each file F by applying a sampling ratio R to each sampled unique segment count;

determining an average segment size for each file F;

generating a physical space measurement for each file F based on the average segment size and the unique segment count; and

generating a total physical space measurement p based on the individual physical space measurements for each file F by combining the compressed and cached bloom filters.

2. The method as recited in claim 1 , wherein the sampling of unique segments is a non-random sampling process.

3. The method as recited in claim 2 , wherein the non-random sampling of unique segments is based on the content of the sampled segments.

4. The method as recited in claim 1 , wherein the average segment size for any file F is obtained independently of the unique segment count for that file F.

5. The method as recited in claim 1 , wherein the sampled representation of a data segment comprises a fingerprint.

6. The method as recited in claim 1 , wherein the sampling is performed with a sampling mask.

7. The method as recited in claim 1 , wherein the sampling is performed such that the unique segment count is not underestimated.

8. The method as recited in claim 1 , wherein each file F is in the form of segmented, deduplicated data.

9. The method as recited in claim 1 , wherein the sampling is a non-random sampling of unique segments based on the content of the sampled segments.

10. The method as recited in claim 1 , wherein the average segment size for any file F is obtained independently of the unique segment count for that file F.

11. The method as recited in claim 1 , wherein each file F is in the form of segmented, deduplicated data.

12. The method as recited in claim 1 , wherein each fingerprint associated with a file F is able to be tested with a sampling condition.

13. The method as recited in claim 1 , wherein a segment associated with a fingerprint is sampled only when the application of a sampling mask indicates that the last bits of the fingerprint match a specified sampling pattern.

14. A non-transitory storage medium having stored therein computer-executable instructions which, when executed by one or more hardware processors, performs the following operations:

measuring an amount of physical storage space used, or expected to be used, by a dataset that comprises an ad-hoc group of size ‘n’ of files F 1 . . . F n , wherein measuring the amount of physical storage space comprises:

receiving information that identifies the ad-hoc group of size ‘n’ of files F 1 . . . F n , each file F including a respective segment set S;

creating a bloom filter with bitmap B F for each of the files F, and sampling a representation of each unique segment in the segment set S by sampling a fingerprint of each unique segment in the segment set S, wherein each sampled fingerprint corresponds to a unique segment physical size, and adding the unique segment physical sizes to the corresponding bloom filter to obtain a sampled unique segment count for each file F;

compressing and caching each of the bloom filters, wherein the bloom filters are compressed such that the respective compressed sizes are proportional to the size of an associated file;

obtaining a unique segment count for each file F by applying a sampling ratio R to each sampled unique segment count;

determining an average segment size for each file F;

generating a physical space measurement for each file F based on the average segment size and the unique segment count; and

generating a total physical space measurement p based on the individual physical space measurements for each file F by combining the compressed and cached bloom filters.

15. The non-transitory storage medium as recited in claim 14 , wherein the sampling is a non-random sampling of unique segments based on the content of the sampled segments.

16. The non-transitory storage medium as recited in claim 14 , wherein the non-random sampling of unique segments is based on the content of the sampled segments.

17. The non-transitory storage medium as recited in claim 14 , wherein the average segment size for any file F is obtained independently of the unique segment count for that file F.

18. The non-transitory storage medium as recited in claim 14 , wherein each file F is in the form of segmented, deduplicated data.

19. The non-transitory storage medium as recited in claim 14 , wherein a segment associated with a fingerprint is sampled only when the application of a sampling mask indicates that the last bits of the fingerprint match a specified sampling pattern.

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: 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 Dec 15, 2015
From: MENEZES, GUILHERME; BOTELHO, FABIANO; REZA, ABDULLAH
To: EMC CORPORATION
Reel/Frame 037296/0124 →
Cited By (2)
US 12,242,425 US 12,554,656