IP Library Granted Patent US 11,650,838
Granted Patent B2
US 11,650,838 · App. 16/865,918 · Granted May 16, 2023

Method, electronic device and computer program product for reducing virtual machine running time in a data protection environment

Inventors: Cheng Wang (Beijing, CN); Bing Liu (Tianjin, CN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F9/45558G06F9/4418G06F9/44505G06F2009/45575G06F2009/45591
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,650,838
App. No.
16/865,918
Granted
May 16, 2023
Kind
B2
Abstract

Embodiments of the present disclosure relate to a method, an electronic device, and a computer program product for controlling a virtual machine. The method comprises: determining external information related to the running of the virtual machine, the external information indicating a first period to be occupied by the virtual machine to process data in association with another virtual machine; determining internal information related to the running of the virtual machine, the internal information indicating a second period to be occupied by the virtual machine to process internally stored data; determining a stop period of the virtual machine based on the external information and the internal information; and controlling the virtual machine to stop running during the stop period. Using the technical solution of the present disclosure, it is possible to intelligently reduce the unnecessary running time of a virtual data protection and storage apparatus in a cloud environment, and thus minimize the running cost of the virtual data protection and storage apparatus itself, which not only can reduce the user cost but also can improve the user experience.

Claims (54)

1. A method for controlling a virtual machine, comprising:

monitoring a running virtual machine;

while running the virtual machine, performing steps of:

determining external information related to the running of the virtual machine, the external information indicating a first period to be assigned to the virtual machine to co-process data in association with another virtual machine;

determining internal information related to the running of the virtual machine, the internal information indicating a second period to be occupied by the virtual machine to process internally stored data including performing garbage collection and disk cleaning; and

determining a stop period of the virtual machine based on the external information and the internal information, wherein determining the stop period includes:

determining the stop period as an idle period of the virtual machine, at least in response to a ratio of a length of the idle period to a length of a non-idle period of the virtual machine not being less than a threshold ratio, and

determining that the length of the idle period is not shorter than a threshold length, wherein the threshold length is based on the time required to stop and resume the running of the virtual machine; and

automatically stopping the running of the virtual machine during the stop period, including causing the virtual machine to stop running based on a determination that the virtual machine is not processing data in association with the another virtual machine and is not processing internally stored data, including when the garbage collection and the disk cleaning are not performed.

2. The method according to claim 1 , wherein determining the external information comprises:

acquiring the external information from at least one of the virtual machine and the another virtual machine.

3. The method according to claim 1 , wherein determining the stop period further comprises:

determining an idle period of the virtual machine based on the external information and the internal information.

4. The method according to claim 1 , wherein the idle period and the non-idle period are determined based on the external information and the internal information.

5. The method according to claim 1 , wherein controlling the virtual machine comprises:

determining a unit time running cost of the virtual machine based on the configuration of the virtual machine; and causing the virtual machine to stop running based on a determination that the unit time running cost is not lower than a threshold cost.

6. The method according to claim 1 , wherein the external information includes a backup time period obtained from an external data protection server.

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

resuming the running of the virtual machine in response to receiving an indication that the virtual machine is to process the data in association with the another virtual machine during the stop period.

8. An electronic device, comprising:

at least one processing unit; and

at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, wherein the instructions, when executed by the at least one processing unit, cause the device to perform actions, the actions comprising:

monitoring a running virtual machine;

while running the virtual machine, performing steps of:

determining external information related to the running of a virtual machine, the external information indicating a first period to be occupied by the virtual machine to co-process data in association with another virtual machine;

determining internal information related to the running of the virtual machine, the internal information indicating a second period to be occupied by the virtual machine to process internally stored data including performing garbage collection and disk cleaning; and

determining a stop period of the virtual machine based on the external information and the internal information, wherein determining the stop period includes:

determining the stop period as an idle period of the virtual machine, at least in response to a ratio of a length of the idle period to a length of a non-idle period of the virtual machine not being less than a threshold ratio; and;

determining that the length of the idle period is not shorter than a threshold length, wherein the threshold length is based on the time required to stop and resume the running of the virtual machine; and

automatically stopping the running of the virtual machine during the stop period, including causing the virtual machine to stop running based on a determination that the virtual machine is not processing data in association with the another virtual machine and is not processing internally stored data, including when the garbage collection and the disk cleaning are not performed.

9. The device according to claim 8 , wherein determining the external information comprises:

acquiring the external information from at least one of the virtual machine and the another virtual machine.

10. The device according to claim 8 , wherein determining the stop period further comprises:

determining an idle period and a non-idle period of the virtual machine based on the external information and the internal information.

11. The device according to claim 8 , wherein the idle period and the non-idle period are determined based on the external information and the internal information.

12. The device according to claim 8 , wherein controlling the virtual machine comprises:

determining a unit time running cost of the virtual machine based on the configuration of the virtual machine; and

causing the virtual machine to stop running based on a determination that the unit time running cost is not lower than a threshold cost.

13. The device according to claim 8 , wherein the external information includes a backup time period obtained from an external data protection server.

14. The device according to claim 8 , wherein the actions further comprise:

resuming the running of the virtual machine in response to receiving an indication that the virtual machine is to process the data in association with the another virtual machine during the stop period.

15. A computer program product that is tangibly stored on a non-transitory computer-readable medium and contains machine-executable instructions which, when executed, cause a machine to perform operations, the operations comprising:

monitoring a running virtual machine;

while running the virtual machine, performing steps of:

determining external information related to the running of the virtual machine, the external information indicating a first period to be occupied by the virtual machine to co-process data in association with another virtual machine;

determining internal information related to the running of the virtual machine, the internal information indicating a second period to be occupied by the virtual machine to process internally stored data including performing garbage collection and disk cleaning; and

determining a stop period of the virtual machine based on the external information and the internal information, wherein determining the stop period includes:

determining the stop period as an idle period of the virtual machine, at least in response to a ratio of a length of the idle period to a length of a non-idle period of the virtual machine not being less than a threshold ratio; and

determining that the length of the idle period is not shorter than a threshold length, wherein the threshold length is based on the time required to stop and resume the running of the virtual machine; and

automatically stopping the running of the virtual machine during the stop period, including causing the virtual machine to stop running based on a determination that the virtual machine is not processing data in association with the another virtual machine and is not processing internally stored data, including when the garbage collection and the disk cleaning are not performed.

16. The computer program product according to claim 15 , wherein determining the external information comprises:

acquiring the external information from at least one of the virtual machine and the another virtual machine.

17. The computer program product according to claim 15 , wherein determining the stop period further comprises:

determining an idle period of the virtual machine based on the external information and the internal information.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 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 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 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 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 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 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2020
From: WANG, CHENG; LIU, BING
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052562/0658 →
Priority Claims (1)
CN 202010125603.X · Feb 27, 2020 · national
Continuity (1)
Related Publication 20210271505A1 · Sep 2, 2021