IP Library Granted Patent US 11,157,382
Granted Patent B2
US 11,157,382 · App. 16/731,924 · Granted Oct 26, 2021

Obtaining of statistical performance of storage system

Inventors: Chark Wenshuai Yu (Shanghai, CN); Ao Sun (Shanghai, CN); You Chen (Shanghai, CN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/3409G06F3/067G06F3/0614G06F3/0653G06F11/3452G11C11/5628G11C16/0483G11C29/52
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,157,382
App. No.
16/731,924
Granted
Oct 26, 2021
Kind
B2
Abstract

Obtaining or facilitating obtaining statistical performance of a storage system is described. For instance, a method comprises: dividing a value range of performance of a storage system into a plurality of adjacent sub-ranges, an upper limit value of each sub-range being a predetermined multiple of a non-zero lower limit value of the sub-range. The method also comprises: determining a distribution of a plurality of measurement values of the performance among the plurality of sub-ranges. The method further comprises: estimating, based on the distribution, a percentile of the plurality of measurement values corresponding to a predetermined percentage to indicate statistical performance of the storage system. As a result, statistical performance indicators of the storage system can be obtained with an acceptable error using a small amount of memory resources.

Claims (73)

1. A computer-implemented method, comprising:

obtaining, by a system comprising a processor, a plurality of measurement values of performance of a storage system;

dividing, by the system, a value range of the performance of the storage system into a plurality of adjacent sub-ranges, a respective upper limit value of each sub-range of the plurality of adjacent sub-ranges being a predetermined multiple of a respective non-zero lower limit value of the sub-range;

determining, by the system, a distribution of the plurality of measurement values of the performance among the plurality of adjacent sub-ranges;

estimating, by the system and based on the distribution, a percentile of the plurality of measurement values corresponding to a predetermined percentage to indicate a statistical performance of the storage system; and

determining, by the system, a performance issue of the storage system based on the percentile of the plurality of measurement values.

2. The method of claim 1 , wherein the dividing the value range into the plurality of adjacent sub-ranges comprises:

determining a tolerable relative error for estimating the percentile;

determining the predetermined multiple based on the tolerable relative error; and

determining, based on the value range and the predetermined multiple, the respective upper limit value and the respective non-zero lower limit value for each sub-range.

3. The method of claim 1 , wherein the dividing the value range into the plurality of adjacent sub-ranges comprises:

rounding the respective upper limit value and the respective non-zero lower limit value for each sub-range; and

combining a group of the plurality of adjacent sub-ranges having a same upper limit value and a same lower limit value after rounding into a single sub-range.

4. The method of claim 1 , wherein the dividing the value range into the plurality of adjacent sub-ranges comprises:

in response to a lower limit value of a sub-range of the plurality of adjacent sub-ranges being determined to be zero, setting an upper limit value of the sub-range to a predetermined non-zero value.

5. The method of claim 1 , wherein the determining the distribution comprises:

for each measurement value of the plurality of measurement values,

determining a sub-range including the measurement value from the plurality of adjacent sub-ranges; and

increasing incrementally a counter associated with the sub-range, the counter being used for recording a number of measurement values of the plurality of measurement values included in the sub-range.

6. The method of claim 5 , wherein the determining the sub-range comprises:

searching the sub-range using a binary search algorithm.

7. The method of claim 1 , wherein the estimating the percentile comprises:

determining a number of the plurality of measurement values;

determining, based on the number and the predetermined percentage, a sequence number of the percentile in the plurality of measurement values;

determining, from the plurality of adjacent sub-ranges, a target sub-range including the percentile based on the sequence number; and

obtaining an estimated value of the percentile based on an upper limit value and a lower limit value of the target sub-range.

8. The method of claim 7 , wherein the determining the number of the plurality of measurement values comprises:

determining a plurality of count values of a plurality of counters respectively associated with the plurality of adjacent sub-ranges, the plurality of counters being respectively used for recording the numbers of measurement values included in the plurality of adjacent sub-ranges; and

obtaining the number of the plurality of measurement values based on the plurality of count values.

9. The method of claim 7 , wherein the obtaining the estimated value comprises:

calculating an average value of the upper limit value and the lower limit value of the target sub-range as the estimated value.

10. An electronic device, comprising:

at least one processor; and

at least one memory storing computer program instructions, the at least one memory and the computer program instructions being configured, with the at least one processor, to cause the electronic device to:

obtain a plurality of measurement values of performance of a storage system;

divide a value range of the performance of the storage system into a plurality of adjacent sub-ranges, a respective upper limit value of each sub-range being a predetermined multiple of a respective non-zero lower limit value of the sub-range;

determine a distribution of the plurality of measurement values of the performance among the plurality of adjacent sub-ranges;

estimate, based on the distribution, a percentile of the plurality of measurement values corresponding to a predetermined percentage to indicate a statistical performance of the storage system; and

determine a performance issue of the storage system based on the percentile of the plurality of measurement values.

11. The electronic device of claim 10 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to divide the value range into the plurality of adjacent sub-ranges by:

determining a tolerable relative error for estimating the percentile;

determining the predetermined multiple based on the tolerable relative error; and

determining, based on the value range and the predetermined multiple, the respective upper limit value and the respective non-zero lower limit value for each sub-range.

12. The electronic device of claim 10 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to divide the value range into the plurality of adjacent sub-ranges by:

rounding the respective upper limit value and the respective non-zero lower limit value for each sub-range; and

combining a plurality of adjacent sub-ranges having a same respective upper limit value and a same respective non-zero lower limit value after rounding into a single sub-range.

13. The electronic device of claim 10 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to divide the value range into the plurality of adjacent sub-ranges by:

in response to a corresponding lower limit value of a selected sub-range of the plurality of adjacent sub-ranges being determined to be zero, setting the respective upper limit value of the selected sub-range to a predetermined non-zero value.

14. The electronic device of claim 10 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to determine the distribution by:

for each of the plurality of measurement values,

determining a sub-range including the measurement value from the plurality of adjacent sub-ranges, the determining resulting in a determined sub-range; and

increasing incrementally a counter associated with the determined sub-range, the counter being used for recording a number of measurement values included in the determined sub-range.

15. The electronic device of claim 14 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to determine the sub-range by:

searching the sub-range using a binary search algorithm, resulting in the determined sub-range.

16. The electronic device of claim 10 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to estimate the percentile by:

determining a number of the plurality of measurement values;

determining, based on the number and the predetermined percentage, a sequence number of the percentile in the plurality of measurement values;

determining, from the plurality of adjacent sub-ranges, a target sub-range including the percentile based on the sequence number; and

obtaining an estimated value of the percentile based on a corresponding upper limit value and a corresponding lower limit value of the target sub-range.

17. The electronic device of claim 16 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to determine the number of the plurality of measurement values by:

determining a plurality of count values of a plurality of counters respectively associated with the plurality of adjacent sub-ranges, the plurality of counters being respectively used for recording numbers of measurement values included in the plurality of adjacent sub-ranges; and

obtaining the number of the plurality of measurement values based on the plurality of count values.

18. The electronic device of claim 16 , wherein the at least one memory and the computer program instructions are configured, with the at least one processor, to cause the electronic device to obtain the estimated value by:

calculating an average value of the corresponding upper limit value and the corresponding lower limit value of the target sub-range as the estimated value.

19. A computer program product being tangibly stored on a non-volatile computer-readable medium and comprising machine-executable instructions which, when executed, causing a machine to perform operations, comprising:

obtaining, by a system comprising a processor, a plurality of measurement values of performance of a storage system;

dividing a value range of the performance of the storage system into adjacent sub-ranges, an upper limit value of each sub-range being a defined multiple of a non-zero lower limit value of the sub-range;

determining a distribution of the plurality of measurement values of the performance among the adjacent sub-ranges;

estimating, based on the distribution, a percentile of the measurement values corresponding to a predetermined percentage to indicate a statistical performance of the storage system; and

determining, by the system, a performance issue of the storage system based on the percentile of the plurality of measurement values.

20. The computer program product of claim 19 , wherein the dividing the value range into the adjacent sub-ranges comprises:

determining a tolerable relative error for estimating the percentile;

determining the defined multiple based on the tolerable relative error; and determining, based on the value range and the defined multiple, the upper limit value and the non-zero lower limit value for each sub-range.

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 (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 IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) 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 IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
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 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2019
From: YU, CHARK WENSHUAI; SUN, AO; CHEN, YOU
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051394/0802 →
Priority Claims (1)
CN 201910606496.X · Jul 5, 2019 · national
Continuity (1)
Related Publication 20210004307A1 · Jan 7, 2021
Cited By (1)
US 12,197,306