IP Library › Granted Patent US 12,189,492
Granted Patent B2
US 12,189,492 · App. 18/295,933 · Granted Jan 7, 2025

Method, electronic device, and computer program product for adjusting performance of block storage system

Inventors: Cheng Wang (Beijing, CN); Bing Liu (Tianjin, CN)
Assignee: DELL PRODUCTS L.P.
G06F11/1461G06F11/3034G06F11/3075G06F11/3409
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 12,189,492
App. No.
18/295,933
Granted
Jan 7, 2025
Kind
B2
Abstract

A method includes monitoring a first input/output (I/O) load set of the block storage system within a first time period and a second I/O load set within a second time period, wherein the block storage system is configured to back up and restore data in a client and has preconfigured predetermined thresholds. The method further includes determining a change of an I/O load of the block storage system based on the first I/O load set and the second I/O load set. The method further includes determining, based on the change of the I/O load, that an I/O load within a third time period reaches a first predetermined threshold. The method further includes adjusting I/O performance of the block storage system based on the I/O load within the third time period in response to determining that the I/O load within the third time period reaches the first predetermined threshold.

Claims (86)

1. A method for adjusting performance of a block storage system, comprising:

monitoring a first input/output (I/O) load set of the block storage system within a first time period and a second I/O load set of the block storage system within a second time period, wherein the block storage system is configured to back up and restore data in a client and has preconfigured predetermined thresholds;

determining a change of an I/O load of the block storage system based on the first I/O load set and the second I/O load set;

determining, based on the change of the I/O load, that an I/O load within a third time period reaches a first predetermined threshold; and

adjusting I/O performance of the block storage system based on the I/O load within the third time period in response to determining that the I/O load within the third time period reaches the first predetermined threshold.

2. The method according to claim 1 , further comprising:

monitoring a real-time I/O load of the block storage system; and

lowering the I/O performance of the block storage system in response to that the real-time I/O load is reduced to a second predetermined threshold.

3. The method according to claim 1 , wherein monitoring the first I/O load set of the block storage system within the first time period and the second I/O load set of the block storage system within the second time period comprises:

monitoring a third I/O load set of each disk of the block storage system within the first time period; and

monitoring a fourth I/O load set of each disk within the second time period;

and the method further comprises:

determining a change of an I/O load of each disk based on the third I/O load set and the fourth I/O load set; and

adjusting I/O performance for each disk based on the change of the I/O load of each disk.

4. The method according to claim 3 , further comprising performing following operations iteratively until all disks in the block storage system are traversed:

choosing a first disk and a second disk in the block storage system, wherein the second disk is different from the first disk;

determining an I/O change of the first disk and an I/O change of the second disk;

determining, based on the I/O change of the first disk and the I/O change of the second disk, that an I/O load increase within a predetermined time period exceeds corresponding thresholds, wherein the corresponding thresholds are different; and

increasing I/O performance of the first disk and I/O performance of the second disk.

5. The method according to claim 4 , further comprising performing following operations iteratively until all disks in the block storage system are traversed:

monitoring real-time I/O loads of the first disk and the second disk; and

lowering the I/O performance of the first disk and the second disk in response to that the real-time loads are reduced to corresponding thresholds.

6. The method according to claim 1 , wherein determining the change of the I/O load of the block storage system based on the first I/O load set and the second I/O load set comprises:

determining, based on the first I/O load set and the second I/O load set, a growth rate of an I/O load within the second time period relative to an I/O load within the first time period;

determining mean values of the first I/O load set and the second I/O load set based on the first I/O load set and the second I/O load set;

determining a first variance of the first I/O load set and a second variance of the second I/O load set based on the first I/O load set, the second I/O load set, and the mean values; and

determining the I/O load change based on the growth rate, the first variance, and the second variance.

7. The method according to claim 6 , wherein determining, based on the change of the I/O load, that the I/O load within the third time period reaches the first predetermined threshold comprises:

acquiring a length of the third time period;

acquiring a time interval between the third time period and the second time period;

determining a change of the I/O load within the third time period based on the length, the time interval, and the second I/O load set; and

comparing the change of the I/O load within the third time period with the first predetermined threshold.

8. The method according to claim 1 , further comprising:

acquiring a data backup setting and a data backup priority of the client of the block storage system; and

determining the first time period, the second time period, and the third time period based on the data backup setting and the data backup priority.

9. The method according to claim 1 , wherein the I/O load comprises at least one of following:

Input/Output Operations Per Second (IOPS); or

I/O throughput.

10. An electronic device, comprising:

a processor; and

a memory coupled to the processor, wherein the memory has instructions stored therein which, when executed by the processor, cause the electronic device to execute actions comprising:

monitoring a first input/output (I/O) load set of a block storage system within a first time period and a second I/O load set of the block storage system within a second time period, wherein the block storage system is configured to back up and restore data in a client and has preconfigured predetermined thresholds;

determining a change of an I/O load of the block storage system based on the first I/O load set and the second I/O load set;

determining, based on the change of the I/O load, that an I/O load within a third time period reaches a first predetermined threshold; and

adjusting I/O performance of the block storage system based on the I/O load within the third time period in response to determining that the I/O load within the third time period reaches the first predetermined threshold.

11. The electronic device according to claim 10 , wherein the actions further comprise:

monitoring a real-time I/O load of the block storage system; and

lowering the I/O performance of the block storage system in response to that the real-time I/O load is reduced to a second predetermined threshold.

12. The electronic device according to claim 10 , wherein monitoring the first I/O load set of the block storage system within the first time period and the second I/O load set of the block storage system within the second time period comprises:

monitoring a third I/O load set of each disk of the block storage system within the first time period; and

monitoring a fourth I/O load set of each disk within the second time period;

and the actions further comprise:

determining a change of an I/O load of each disk based on the third I/O load set and the fourth I/O load set; and

adjusting I/O performance for each disk based on the change of the I/O load of each disk.

13. The electronic device according to claim 12 , wherein the actions further comprise performing following actions iteratively until all disks in the block storage system are traversed:

choosing a first disk and a second disk in the block storage system, wherein the second disk is different from the first disk;

determining an I/O change of the first disk and an I/O change of the second disk;

determining, based on the I/O change of the first disk and the I/O change of the second disk, that an I/O load increase within a predetermined time period exceeds corresponding thresholds, wherein the corresponding thresholds are different; and

increasing I/O performance of the first disk and I/O performance of the second disk.

14. The electronic device according to claim 13 , wherein the actions further comprise performing following actions iteratively until all disks in the block storage system are traversed:

monitoring real-time I/O loads of the first disk and the second disk; and

lowering the I/O performance of the first disk and the second disk in response to that the real-time loads are reduced to corresponding thresholds.

15. The electronic device according to claim 10 , wherein determining the change of the I/O load of the block storage system based on the first I/O load set and the second I/O load set comprises:

determining, based on the first I/O load set and the second I/O load set, a growth rate of an I/O load within the second time period relative to an I/O load within the first time period;

determining mean values of the first I/O load set and the second I/O load set based on the first I/O load set and the second I/O load set;

determining a first variance of the first I/O load set and a second variance of the second I/O load set based on the first I/O load set, the second I/O load set, and the mean values; and

determining the I/O load change based on the growth rate, the first variance, and the second variance.

16. The electronic device according to claim 15 , wherein determining, based on the change of the I/O load, that the I/O load within the third time period reaches the first predetermined threshold comprises:

acquiring a length of the third time period;

acquiring a time interval between the third time period and the second time period;

determining a change of the I/O load within the third time period based on the length, the time interval, and the second I/O load set; and

comparing the change of the I/O load within the third time period with the first predetermined threshold.

17. The electronic device according to claim 10 , wherein the actions further comprise:

acquiring a data backup setting and a data backup priority of the client of the block storage system; and

determining the first time period, the second time period, and the third time period based on the data backup setting and the data backup priority.

18. The electronic device according to claim 10 , wherein the I/O load comprises at least one of following:

Input/Output Operations Per Second (IOPS); or

I/O throughput.

19. A computer program product that is tangibly stored on a computer-readable storage medium and comprises computer-executable instructions, wherein the computer-executable instructions, when executed by a device, cause the device to perform a method, the method comprising:

monitoring a first input/output (I/O) load set of a block storage system within a first time period and a second I/O load set of the block storage system within a second time period, wherein the block storage system is configured to back up and restore data in a client and has preconfigured predetermined thresholds;

determining a change of an I/O load of the block storage system based on the first I/O load set and the second I/O load set;

determining, based on the change of the I/O load, that an I/O load within a third time period reaches a first predetermined threshold; and

adjusting I/O performance of the block storage system based on the I/O load within the third time period in response to determining that the I/O load within the third time period reaches the first predetermined threshold.

20. The computer program product according to claim 19 , wherein the method further comprises:

monitoring a real-time I/O load of the block storage system; and

lowering the I/O performance of the block storage system in response to that the real-time I/O load is reduced to a second predetermined threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2023
From: WANG, CHENG; LIU, BING
To: DELL PRODUCTS L.P.
Reel/Frame 063228/0232 →
Priority Claims (1)
CN 202310153654.7 · Feb 17, 2023 · national
Continuity (1)
Related Publication 20240281340A1 · Aug 22, 2024
References Cited (16)
US 11775186B1 · Setter · 2023 [cited by examiner]
US 20050010677A1 · Krissell · 2005 [cited by examiner]
US 20110185120A1 · Jess · 2011 [cited by examiner]
US 20140358479A1 · Nazari · 2014 [cited by examiner]
US 20140372607A1 · Gladwin · 2014 [cited by examiner]
US 20180210754A1 · Vaish · 2018 [cited by examiner]
US 20190297140A1 · Mason · 2019 [cited by examiner]
US 20190310920A1 · Rybczyk · 2019 [cited by examiner]
US 20190332280A1 · Bernal · 2019 [cited by examiner]
US 20200285545A1 · Ashokkumar · 2020 [cited by examiner]
US 20200401343A1 · Lan · 2020 [cited by examiner]
US 20220327030A1 · Appireddygari Venkataramana · 2022 [cited by examiner]
US 20230136226A1 · Mo · 2023 [cited by examiner]
US 20240281343A1 · Liu · 2024 [cited by examiner]
WO WO2023177703A1 · 2023 [cited by examiner]
I. Ong and H. Lim, “Dynamic Load Balancing and Network Monitoring in iATA Protocol for Mobile Appliances,” 2010 4th International Conference on Multimedia and Ubiquitous Engineering, Cebu, Philippines, 2010, pp. 1-4 (Ye… [cited by examiner]