IP Library Granted Patent US 11,593,313
Granted Patent B2
US 11,593,313 · App. 15/991,363 · Granted Feb 28, 2023

Processing device configured for efficient generation of data reduction estimates for combinations of datasets

Inventors: Anton Kucherov (Dudley, MA); David Meiri (Somerville, MA)
Assignee: EMC IP Holding Company LLC
G06F16/1756G06F3/0608G06F3/0641G06F16/1748G06F16/1752G06F16/907G06F3/067
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 11,593,313
App. No.
15/991,363
Granted
Feb 28, 2023
Kind
B2
Abstract

An apparatus in one embodiment comprises at least one processing device comprising a processor coupled to a memory. The processing device is configured to identify at least first and second datasets to be scanned to generate a data reduction estimate for a prospective combination of the first and second datasets, to designate a scan criterion to be utilized in the scan of each of the datasets, and for each of a plurality of pages of each of the datasets, to scan the page, where scanning the page comprises performing a computation on the page to obtain a page result, determining whether or not the page result satisfies the designated scan criterion, and responsive to the page result satisfying the designated scan criterion, updating a corresponding entry of a data reduction estimate table for the dataset. The processing device merges contents of the data reduction estimate tables, and generates the data reduction estimate based at least in part on the merged contents.

Claims (83)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the processing device being configured:

to identify at least first and second datasets to be scanned to generate a data reduction estimate for a prospective combination of the first and second datasets;

to designate a scan criterion to be utilized in the scan of each of the datasets;

for each of a plurality of pages of each of the datasets, to scan the page by:

performing a computation on the page to obtain a page result;

determining whether or not the page result satisfies the designated scan criterion; and

responsive to the page result satisfying the designated scan criterion, updating a corresponding entry of a data reduction estimate table for the dataset;

to merge contents of the data reduction estimate tables for the respective first and second datasets; and

to generate the data reduction estimate for the prospective combination of the first and second datasets based at least in part on the merged contents of the data reduction estimate tables;

wherein a given one of the data reduction estimate tables for a particular one of the datasets comprises a plurality of entries for respective ones of the pages of that dataset;

wherein merging contents of the data reduction estimate tables comprises for each of a plurality of entries of at least one of the data reduction estimate tables:

determining if there is a related entry having a same page identifier in another one of the data reduction estimate tables; and

responsive to an affirmative determination, combining counter values of the related entries; and

wherein the designated scan criterion establishes a sampling ratio of the pages as part of the scan.

2. The apparatus of claim 1 wherein the processing device is implemented in one of:

a host device configured to communicate over a network with at least one storage system that stores at least one of the first and second datasets; and

said at least one storage system that stores at least one of the first and second datasets.

3. The apparatus of claim 1 wherein the first and second datasets comprise respective sets of one or more logical storage volumes of at least one storage system.

4. The apparatus of claim 1 wherein the designated scan criterion comprises a designated content-based signature prefix and scanning the page comprises:

computing a content-based signature for the page;

comparing an initial portion of the content-based signature to the designated content-based signature prefix; and

responsive to a match between the initial portion and the designated content-based signature prefix, updating a corresponding entry of a data reduction estimate table for the dataset.

5. The apparatus of claim 1 wherein the designated scan criterion comprises a designated subset inclusion characteristic and scanning the page comprises:

computing a polynomial-based signature for the page;

determining whether or not the polynomial-based signature satisfies the designated subset inclusion characteristic; and

responsive to the polynomial-based signature satisfying the designated subset inclusion characteristic, computing a content-based signature for the page and updating a corresponding entry of a data reduction estimate table for the dataset based at least in part on the content-based signature.

6. The apparatus of claim 1 wherein updating a corresponding entry of the data reduction estimate table for a given one of the pages of a given one of the datasets comprises one of the following operations (i) and (ii):

(i) responsive to a page identifier of the given page not already being present in the data reduction estimate table, inserting the page identifier into the data reduction estimate table and setting an associated counter to an initial value; and

(ii) responsive to the page identifier already being present in the data reduction estimate table, incrementing its associated counter.

7. The apparatus of claim 1 wherein the corresponding entry is configured to include a page identifier and further wherein the page identifier comprises a specified number of initial bytes of a content-based signature of that page.

8. The apparatus of claim 1 wherein each of one or more of the entries is configured to include a page identifier that comprises less than an entire content-based signature of its corresponding page.

9. The apparatus of claim 4 wherein the designated content-based signature prefix comprises a specified number of initial content-based signature bytes with the initial bytes each having a designated value.

10. The apparatus of claim 5 wherein the designated subset inclusion characteristic specifies that application of a designated function to the polynomial-based signature produces a particular result.

11. The apparatus of claim 5 wherein the polynomial-based signature comprises an n-bit cyclic redundancy check (CRC) value.

12. The apparatus of claim 1 wherein the processing device is configured to adjust one or more characteristics of a storage configuration of the first and second datasets based at least in part on the data reduction estimate generated for the prospective combination of the first and second datasets.

13. The apparatus of claim 1 wherein the processing device is configured:

to generate one or more additional data reduction estimates for respective additional groups of two or more datasets;

to select a particular one of the groups of two or more datasets for actual combination based at least in part on their respective data reduction estimates; and

to combine the two or more datasets of the selected group.

14. A method comprising:

identifying at least first and second datasets to be scanned to generate a data reduction estimate for a prospective combination of the first and second datasets;

designating a scan criterion to be utilized in the scan of each of the datasets;

for each of a plurality of pages of each of the datasets, scanning the page by:

performing a computation on the page to obtain a page result;

determining whether or not the page result satisfies the designated scan criterion; and

responsive to the page result satisfying the designated scan criterion, updating a corresponding entry of a data reduction estimate table for the dataset;

merging contents of the data reduction estimate tables for the respective first and second datasets; and

generating the data reduction estimate for the prospective combination of the first and second datasets based at least in part on the merged contents of the data reduction estimate tables;

wherein a given one of the data reduction estimate tables for a particular one of the datasets comprises a plurality of entries for respective ones of the pages of that dataset;

wherein merging contents of the data reduction estimate tables comprises for each of a plurality of entries of at least one of the data reduction estimate tables:

determining if there is a related entry having a same page identifier in another one of the data reduction estimate tables; and

responsive to an affirmative determination, combining counter values of the related entries;

wherein the designated scan criterion establishes a sampling ratio of the pages as part of the scan; and

wherein the method is implemented by at least one processing device comprising a processor coupled to a memory.

15. The method of claim 14 wherein each of one or more of the entries is configured to include a page identifier that comprises less than an entire content-based signature of its corresponding page.

16. The method of claim 14 wherein updating a corresponding entry of the data reduction estimate table for a given one of the pages of a given one of the datasets comprises one of the following operations (i) and (ii):

(i) responsive to a page identifier of the given page not already being present in the data reduction estimate table, inserting the page identifier into the data reduction estimate table and setting an associated counter to an initial value; and

(ii) responsive to the page identifier already being present in the data reduction estimate table, incrementing its associated counter.

17. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device:

to identify at least first and second datasets to be scanned to generate a data reduction estimate for a prospective combination of the first and second datasets;

to designate a scan criterion to be utilized in the scan of each of the datasets;

for each of a plurality of pages of each of the datasets, to scan the page by:

performing a computation on the page to obtain a page result;

determining whether or not the page result satisfies the designated scan criterion; and

responsive to the page result satisfying the designated scan criterion, updating a corresponding entry of a data reduction estimate table for the dataset;

to merge contents of the data reduction estimate tables for the respective first and second datasets; and

to generate the data reduction estimate for the prospective combination of the first and second datasets based at least in part on the merged contents of the data reduction estimate tables;

wherein a given one of the data reduction estimate tables for a particular one of the datasets comprises a plurality of entries for respective ones of the pages of that dataset;

wherein merging contents of the data reduction estimate tables comprises for each of a plurality of entries of at least one of the data reduction estimate tables:

determining if there is a related entry having a same page identifier in another one of the data reduction estimate tables; and

responsive to an affirmative determination, combining counter values of the related entries; and

wherein the designated scan criterion establishes a sampling ratio of the pages as part of the scan.

18. The computer program product of claim 17 wherein each of one or more of the entries is configured to include a page identifier that comprises less than an entire content-based signature of its corresponding page.

19. The computer program product of claim 17 wherein the program code when executed by said at least one processing device further causes said at least one processing device:

to generate one or more additional data reduction estimates for respective additional groups of two or more datasets;

to select a particular one of the groups of two or more datasets for actual combination based at least in part on their respective data reduction estimates; and

to combine the two or more datasets of the selected group.

20. The computer program product of claim 17 wherein the designated scan criterion comprises a designated subset inclusion characteristic and scanning the page comprises:

computing a signature for the page;

determining whether or not the signature satisfies the designated subset inclusion characteristic; and

responsive to the signature satisfying the designated subset inclusion characteristic, updating a corresponding entry of a data reduction estimate table for the dataset.

Assignments (8)
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 (047648/0422) Recorded May 20, 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 060160/0862 →
RELEASE OF SECURITY INTEREST AT REEL 047648 FRAME 0346 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 058298/0510 →
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 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047648/0346 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 12, 2018
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 047648/0422 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2018
From: KUCHEROV, ANTON; MEIRI, DAVID
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 046842/0329 →
Continuity (1)
Related Publication 20190370356A1 · Dec 5, 2019