IP Library Granted Patent US 10,915,251
Granted Patent B2
US 10,915,251 · App. 16/511,924 · Granted Feb 9, 2021

Dynamic parallelism

Inventors: Shelesh Chopra (Bangalore, IN); Rajkumar Palkhade (Pune, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0613G06F3/065G06F3/067G06F3/0619G06F11/1458G06F11/1464
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 10,915,251
App. No.
16/511,924
Granted
Feb 9, 2021
Kind
B2
Abstract

Techniques to optimize use of the available capacity of a backup target storage device are disclosed. In various embodiments, a current capacity of a target system to which backup data is to be streamed to handle additional streams is determined dynamically, at or near a time at which a backup operation is to be performed. One or more backup parameters of the backup operation is/are set dynamically, based at least in part on the dynamically determined current capacity of the target system.

Claims (41)

1. A method of protecting data, comprising:

determining dynamically, at or near a time at which a backup operation is to be performed, a current capacity of a target system to which backup data is to be streamed to handle additional streams;

comparing the determined current capacity of the target system to one or more capabilities of a source system, wherein the one or more capabilities of the source system include a maximum number of concurrent backup write streams;

determining a number of concurrent backup streams for the backup operation based on the maximum number of concurrent backup write streams of the source system and a current number of additional backup write streams that the target system is capable of receiving;

dynamically setting one or more backup parameters of the backup operation, based at least in part on the determined number of concurrent backup streams for the backup operation; and

backing up to the target system the backup data based on the one or more backup parameters.

2. The method of claim 1 , further comprising:

receiving an indication to perform the backup operation; and

initiating at least in part in response to the indication said step of determining dynamically the current capacity of the target system.

3. The method of claim 1 , wherein the current capacity of the target system comprises the current number of additional backup write streams that the target system is capable of receiving.

4. The method of claim 1 , wherein dynamically setting one or more backup parameters of the backup operation includes allocating among two or more data sets said current capacity of the target system.

5. The method of claim 1 , wherein dynamically setting one or more backup parameters of the backup operation includes allocating among two or more data movers said current capacity of the target system.

6. The method of claim 1 , wherein the current capacity of the target system is determined by a calibrator module, appliance, or system with which the backup operation is associated.

7. The method of claim 1 , wherein the current capacity of the target system is determined at least in part by invoking an application programming interface (API) of the target system.

8. The method of claim 1 , wherein the one or more backup parameters of the backup operation are set based at least in part on a capability of the source system on which a source data to be backed up in the backup operation is stored.

9. The method of claim 1 , wherein the one or more backup parameters of the backup operation are set based at least in part on an attribute of a source data to be backed up in the backup operation is stored.

10. The method of claim 1 , further comprising monitoring the target system while the backup operation is being performed to detect a change in said current capacity of the target system.

11. The method of claim 10 , further comprising adjusting said one or more backup parameters during the course of the backup operation based at least in part on a determination that the current capacity of the target system has been detected to have changed.

12. A system to protect data, comprising:

a communication interface; and

a processor coupled to the communication interface and configured to:

determine dynamically, at or near a time at which a backup operation is to be performed, a current capacity of a target system to which backup data is to be streamed to handle additional streams;

compare the determined current capacity of the target system to one or more capabilities of a source system, wherein the one or more capabilities of the source system include a maximum number of concurrent backup write streams;

determine a number of concurrent backup streams for the backup operation based on the maximum number of concurrent backup write streams of the source system and a current number of additional backup write streams that the target system is capable of receiving;

dynamically set one or more backup parameters of the backup operation, based at least in part on the determined number of concurrent backup streams for the backup operation; and

back up to the target system the backup data based on the one or more backup parameters.

13. The system of claim 12 , wherein the processor is further configured to:

receive an indication to perform the backup operation; and

determine dynamically the current capacity of the target system at least in part in response to the indication.

14. The system of claim 12 , wherein the current capacity of the target system comprises the current number of additional backup write streams that the target system is capable of receiving.

15. The system of claim 12 , wherein to dynamically set one or more backup parameters of the backup operation, the processor is further configured to allocate among two or more data sets said current capacity of the target system.

16. The system of claim 12 , wherein to dynamically set one or more backup parameters of the backup operation, the processor is further configured to allocate among two or more data movers said current capacity of the target system.

17. The system of claim 12 , wherein the current capacity of the target system is determined at least in part by invoking an application programming interface (API) of the target system.

18. The system of claim 12 , wherein the one or more backup parameters of the backup operation are set based at least in part on a capability of the source system on which a source data to be backed up in the backup operation is stored.

19. A computer program product to protect data, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

determining dynamically, at or near a time at which a backup operation is to be performed, a current capacity of a target system to which backup data is to be streamed to handle additional streams;

comparing the determined current capacity of the target system to one or more capabilities of a source system, wherein the one or more capabilities of the source system include a maximum number of concurrent backup write streams;

determining a number of concurrent backup streams for the backup operation based on the maximum number of concurrent backup write streams of the source system and a current number of additional backup write streams that the target system is capable of receiving;

dynamically setting one or more backup parameters of the backup operation, based at least in part on the determined number of concurrent backup streams for the backup operation; and

backing up to the target system the backup data based on the one or more backup parameters.

20. The computer program product of claim 19 , wherein the current capacity of the target system comprises the current number of additional backup write streams that the target system is capable of receiving.

Assignments (10)
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 (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 (050724/0571) 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 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: EMC CORPORATION; DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
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 050724/0571 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2019
From: CHOPRA, SHELESH; PALKHADE, RAJKUMAR
To: EMC CORPORATION
Reel/Frame 050400/0707 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2019
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 050401/0001 →
Continuity (3)
Continuation 16220973 · Dec 14, 2018
Continuation 14752397 · Jun 26, 2015
Related Publication 20190391745A1 · Dec 26, 2019