IP Library › Granted Patent US 10,664,165
Granted Patent B1
US 10,664,165 · App. 16/409,366 · Granted May 26, 2020

Managing inline data compression and deduplication in storage systems

Inventors: Sorin Faibish (Newton, MA); Istvan Gonczi (Berkley, MA); Philippe Armangau (Acton, MA); Vamsi Vankamamidi (Hopkinton, MA); Ivan Bassov (Brookline, MA)
Assignee: EMC IP Holding Company LLC
G06F3/0608G06F3/0641G06F3/0689H03M7/3059H03M7/60
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,664,165
App. No.
16/409,366
Filed
May 10, 2019
Granted
May 26, 2020
Kind
B1
Art Unit
2845
USPC
341/50
Abstract

A method is used in managing inline data compression and deduplication in storage systems. A block of data from data stored in a cache of a storage system is identified based on entropy. Entropy of the block of data is compared with a first threshold value. Based on the comparison, the block of data is either deduplicated or compressed without deduplication.

Claims (46)

1. A method for use in managing inline data compression and deduplication in storage systems, the method comprising:

identifying, based on entropy, a block of data from data stored in a cache of a storage system;

comparing entropy of the block of data with a first threshold value;

based on the comparison, either deduplicating the block of data or compressing the block of data without deduplication.

2. The method of claim 1 , wherein identifying the block of data comprises:

identifying between 4 KB and 128 KB of data to include in the block.

3. The method of claim 1 , wherein identifying the block of data comprises:

determining entropy of chunks of data stored in the cache;

including, in the block of data, chunks of data with entropy falling below a second threshold value.

4. The method of claim 3 , wherein a chunk includes 4 KB of data.

5. The method of claim 3 , wherein a chunk includes 8 KB of data.

6. The method of claim 3 , wherein comparing the entropy of the block of data with the first threshold value comprises:

determining the entropy of the block by averaging the entropy of chunks of data in the block.

7. The method of claim 1 , wherein identifying the block of data comprises:

identifying chunks of data stored in the cache within a predetermined window of time.

8. The method of claim 1 , wherein deduplicating the block of data comprises:

deduplicating the block of data in increments of 512 B.

9. The method of claim 1 , further comprising:

determining entropy of the deduplicated block of data;

comparing the entropy of the deduplicated block of data with a third threshold value;

based on the comparison, either compressing the deduplicated block of data or writing the deduplicated block of data to storage without compression.

10. The method of claim 9 , wherein determining the entropy of the deduplicated block of data comprises:

averaging the entropy of remaining data in the deduplicated block of data.

11. A system for use in managing inline data compression and deduplication in storage systems, the system comprising a processor configured to:

identify, based on entropy, a block of data from data stored in a cache of a storage system;

compare entropy of the block of data with a first threshold value;

based on the comparison, either deduplicate the block of data or compress the block of data without deduplication.

12. The system of claim 11 , wherein the processor is further configured to:

identify between 4 KB and 128 KB of data to include in the block.

13. The system of claim 11 , wherein the processor is further configured to:

determine entropy of chunks of data stored in the cache;

include, in the block of data, chunks of data with entropy falling below a second threshold value.

14. The system of claim 13 , wherein a chunk includes 4 KB of data.

15. The system of claim 13 , wherein a chunk includes 8 KB of data.

16. The system of claim 11 , wherein the processor is further configured to:

determine the entropy of the block by averaging the entropy of chunks of data in the block.

17. The system of claim 11 , wherein the processor is further configured to:

identify chunks of data stored in the cache within a predetermined window of time.

18. The system of claim 11 , wherein the processor is further configured to:

deduplicate the block of data in increments of 512 B.

19. The system of claim 11 , wherein the processor is further configured to:

determine entropy of the deduplicated block of data;

compare the entropy of the deduplicated block of data with a third threshold value;

based on the comparison, either compress the deduplicated block of data or write the deduplicated block of data to storage without compression.

20. The system of claim 19 , wherein the processor is further configured to:

average the entropy of remaining data in the deduplicated block of data.

Assignments (9)
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 (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2019
From: FAIBISH, SORIN; GONCZI, ISTVAN; ARMANGAU, PHILIPPE; VANKAMAMIDI, VAMSI; BASSOV, IVAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049849/0956 →
Cited By (21)
US 12,197,727 US 12,242,747 US 12,271,591 US 12,282,673 US 12,307,112 US 12,316,353 US 12,386,542 US 12,413,243 US 12,417,018 US 12,430,056 US 12,474,852 US 12,498,869 US 12,524,154 US 12,619,738 US 12,625,626 US 12,625,645 US 12,632,176 US 12,656,949 US 12,687,967 US 12,695,465 US 12,737,113