IP Library Granted Patent US 9,135,032
Granted Patent B2
US 9,135,032 · App. 13/014,670 · Granted Sep 15, 2015

System, method and computer program product for data processing and system deployment in a virtual environment

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 9,135,032
App. No.
13/014,670
Granted
Sep 15, 2015
Kind
B2
Abstract

Systems, methods, and computer program products for processing data are disclosed. A method according to one embodiment includes reading a data processing instruction locally called by a virtual work unit; optimizing the read data processing instruction; and performing data processing for the virtual work unit using the optimized data processing instruction. The step of optimizing the read data processing instruction may include one or more of: merging data processing instructions from different virtual work units for same data, and analyzing data processing instructions from different virtual work units to select suitable data processing timing. The data processing method is executed in a virtual environment.

Claims (60)

1. A computer program product for processing data, the computer program product comprising a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:

computer readable program code configured to read a first data processing instruction at an instruction optimizing module, the first data processing instruction being locally called by a virtual work unit in a virtual environment;

computer readable program code configured to cause the virtual work unit to not perform any data processing operations in furtherance of the first data processing instruction;

computer readable program code configured to optimize the first data processing instruction to create an optimized data processing instruction by performing at least:

analyzing data processing instructions from different virtual work units to select suitable data processing timing, the suitable data processing timing being selected to avoid competition for operation resources that are used to execute the optimized data processing instruction and are being utilized by one or more of the different virtual work units in the virtual environment; and

merging data processing instructions from the different virtual work units with the first data processing instruction in response to a determination that the data processing instructions from the different virtual work units and the first data processing instruction are for same data in the virtual environment; and

computer readable program code configured to perform data processing for the virtual work unit using the optimized data processing instruction,

wherein the operation resources include at least processing power.

2. The computer program product according to claim 1 , wherein the data processing comprises one of:

data backup processing, wherein the first data processing instruction comprises a data backup instruction; and

data recovery processing, wherein the first data processing instruction comprises a data recovery instruction.

3. The computer program product according to claim 1 , wherein the computer readable program code configured to perform data processing for the virtual work unit using the optimized data processing instruction comprises:

computer readable program code configured to read data to be backed up from a shared storage medium of the virtual work unit; and

computer readable program code configured to write the data to be backed up from the shared storage medium to a backup storage medium.

4. The computer program product according to claim 1 , wherein the computer readable program code configured to perform data processing for the virtual work unit using the optimized data processing instruction comprises:

computer readable program code configured to read data to be recovered from a backup storage medium; and

computer readable program code configured to write the data to be recovered from the backup storage medium to a shared storage medium of the virtual work unit.

5. A data processing system, comprising:

a processor configured to execute logic;

logic configured to read a first data processing instruction locally called by a virtual work unit;

logic configured to cause the virtual work unit to not perform any data processing operations in furtherance of the first data processing instruction;

logic configured to optimize the first data processing instruction to create an optimized data processing instruction by performing at least:

analyzing data processing instructions from different virtual work units to select suitable data processing timing, the suitable data processing timing being selected to avoid competition for operation resources that are used to execute the optimized data processing instruction and are being utilized by one or more of the different virtual work units in a virtual environment that comprises the data processing system; and

merging data processing instructions from the different virtual work units with the first data processing instruction in response to a determination that the data processing instructions from the different virtual work units and the first data processing instruction are for same data in the virtual environment that comprises the data processing system; and

logic configured to perform data processing for the virtual work unit using the optimized data processing instruction,

wherein the operation resources include at least processing power.

6. The system according to claim 5 , wherein the data processing comprises one of:

data backup processing, wherein the first data processing instruction comprises a data backup instruction; and

data recovery processing, wherein the first data processing instruction comprises a data recovery instruction.

7. The system according to claim 5 , wherein the first data processing instruction locally called by the virtual work unit is called by a system call interface which is added in the virtual work unit, and wherein the first data processing instruction is called according to data processing metadata defined by the virtual work unit.

8. The system according to claim 5 , wherein the logic configured to perform data processing for the virtual work unit using the optimized first data processing instruction comprises:

logic configured to read data to be backed up from a shared storage medium of the virtual work unit; and

logic configured to write the data to be backed up from the shared storage medium to a backup storage medium.

9. The system according to claim 5 , wherein the logic configured to perform data processing for the virtual work unit using the optimized data processing instruction comprises:

logic configured to read data to be recovered from a backup storage medium; and

logic configured to write the data to be recovered from the backup storage medium to a shared storage medium of the virtual work unit.

10. The system according to claim 5 , wherein the logic configured to read the first data processing instruction called by the virtual work unit is configured to read according to at least one of: a predetermined time, and a predetermined number of instructions.

11. A data processing method, the method comprising:

reading a first data processing instruction at an instruction optimizing module, the first data processing instruction being locally called by a virtual work unit;

causing the virtual work unit to not perform a data processing operation through a virtual network in furtherance of the first data processing instruction;

optimizing the first data processing instruction to create an optimized data processing instruction by performing at least:

analyzing data processing instructions from different virtual work units to select suitable data processing timing, the suitable data processing timing being selected to avoid competition for operation resources that are used to execute the optimized data processing instruction and are being utilized by one or more of the different virtual work units in a virtual environment that comprises the virtual network; and

merging data processing instructions from the different virtual work units with the first data processing instruction in response to a determination that the data processing instructions from the different virtual work units and the first data processing instruction are for same data in the virtual environment; and

performing data processing for the virtual work unit using the optimized data processing instruction to avoid degradation of system performance due to redundant data processing and excessive competition on the virtual environment,

wherein the operation resources include at least processing power.

12. The method according to claim 11 , wherein the data processing comprises one of:

data backup processing, wherein the first data processing instruction comprises a data backup instruction; and

data recovery processing, wherein the first data processing instruction comprises a data recovery instruction.

13. The method according to claim 11 , wherein the first data processing instruction locally called by the virtual work unit is called by a system call interface which is added in the virtual work unit, and wherein the first data processing instruction is called according to data processing metadata defined by the virtual work unit.

14. The method according to claim 11 , wherein performing data processing for the virtual work unit using the optimized data processing instruction comprises:

reading data to be backed up from a shared storage medium of the virtual work unit; and

writing the read data to be backed up from the shared storage medium to a backup storage medium.

15. The method according to claim 11 , wherein performing data processing for the virtual work unit using the optimized data processing instruction comprises:

reading data to be recovered from a backup storage medium; and

writing the read data to be recovered from the backup storage medium to a shared storage medium of the virtual work unit.

16. The method according to claim 11 , wherein reading the first data processing instruction called by the virtual work unit comprises at least one of: reading according to a predetermined time, and reading according to a predetermined number of instructions.

17. The computer program product according to claim 1 , wherein the computer readable program code configured to optimize the first data processing instruction is further configured to suspend and/or delay the first data processing instruction while the virtual environment is processing other operations and occupying operation resources until the virtual environment has available processing power to execute the first data processing instruction.

18. The computer program product according to claim 17 , wherein the computer readable program code configured to perform data processing for the virtual work unit using the optimized data processing instruction is configured to avoid redundant data processing.

19. The system according to claim 5 , wherein the logic configured to optimize the first data processing instruction is configured to suspend and/or delay the first data processing instruction while the virtual environment is processing other operations and occupying operation resources until the virtual environment has available processing power to execute the first data processing instruction.

20. The system according to claim 19 , wherein the logic configured to perform data processing for the virtual work unit using the optimized data processing instruction is configured to avoid redundant data processing.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MAPLEBEAR INC.
Reel/Frame 055155/0943 →