IP Library Granted Patent US 11,468,016
Granted Patent B2
US 11,468,016 · App. 16/987,604 · Granted Oct 11, 2022

Method and system for parallelizing backup generation operations using pseudo-asset backups

Inventors: Manish Sharma (Bangalore, IN); Aaditya Rakesh Bansal (Bangalore, IN); Shelesh Chopra (Bangalore, IN); Sunil Yadav (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F16/178G06F16/164
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,468,016
App. No.
16/987,604
Granted
Oct 11, 2022
Kind
B2
Abstract

A method that is performed for backing up data. The method includes obtaining a backup request; and in response to the backup request: obtaining an asset and an asset entry from a file system metadata repository associated with the backup request; identifying asset components of the asset using the asset entry; assigning asset components to backup threads to be backed up as pseudo-assets based on the asset entry; executing the backup threads to generate pseudo-asset backups; storing the pseudo-asset backups on backup storages; and updating asset backup metadata based on the pseudo-asset backups.

Claims (58)

1. A method for backing up data, the method comprising:

obtaining a backup request; and

in response to the backup request:

obtaining an asset and an asset entry from a file system metadata repository associated with the backup request;

identifying asset components of the asset using the asset entry, wherein the asset entry indicates a logical division of the asset components based on an asset structure, asset component sizes, and one or more exclusion tags associated with the asset specified by the asset entry;

dividing the asset components into a first portion of the asset components and a second portion of the asset components based on the logical division of the asset components, wherein the logical division of the asset components specifies an even distribution of asset component sizes between the first portion of the asset components and the second portion of the asset components;

assigning the first portion of the asset components to a first backup thread and the second portion of the asset components to a second backup thread to be backed up as pseudo-assets based on the logical division of the asset components, wherein:

the first portion of the asset components comprises a first portion of files and folders of the asset, and

the second portion of the asset components comprises a second portion of files and folders of the asset;

executing the first backup thread and the second backup thread to generate a first pseudo-asset backup and a second pseudo-asset backup, wherein the first backup thread is executed in parallel with the second backup thread, wherein an even distribution of computing resources is used to execute the first backup thread and the second backup thread;

storing the first pseudo-asset backup and the second pseudo-asset backup on backup storages;

updating asset backup metadata based on the first pseudo-asset backup and the second pseudo-asset backup; and

initiating merging of the first pseudo-asset backup and the second pseudo-asset backup on the backup storages using the asset backup metadata to generate an asset backup.

2. The method of claim 1 , wherein the asset backup comprises the asset components and the asset entry associated with the asset.

3. The method of claim 1 wherein the exclusion tags specify asset components to be excluded from being backed up using the first backup thread and the second backup thread.

4. The method of claim 1 , wherein:

the first pseudo-asset backup comprises:

a first portion of asset data of the asset corresponding to the first portion of the asset components; and

a first portion of the asset entry corresponding to the first portion of the asset data; and

the second pseudo-asset backup comprises:

a second portion of asset data of the asset corresponding to the second portion of the asset components; and

a second portion of the asset entry corresponding to the second portion of the asset data.

5. A system for backing up data, comprising:

a processor;

a backup agent, which when executed by the processor performs a method, the method comprising:

identifying asset components of the asset using the asset entry, wherein the asset entry indicates a logical division of the asset components based on an asset structure, asset component sizes, and one or more exclusion tags associated with the asset specified by the asset entry;

dividing the asset components into a first portion of the asset components and a second portion of the asset components based on the logical division of the asset components, wherein the logical division of the asset components specifies an even distribution of asset component sizes between the first portion of the asset components and the second portion of the asset components;

assigning the first portion of the asset components to a first backup thread and the second portion of the asset components to a second backup thread to be backed up as pseudo-assets based on the logical division of the asset components, wherein:

the first portion of the asset components comprises a first portion of files and folders of the asset, and

the second portion of the asset components comprises a second portion of files and folders of the asset;

executing the first backup thread and the second backup thread to generate a first pseudo-asset backup and a second pseudo-asset backup, wherein the first backup thread is executed in parallel with the second backup thread, wherein an even distribution of computing resources is used to execute the first backup thread and the second backup thread;

storing the first pseudo-asset backup and the second pseudo-asset backup on backup storages;

updating asset backup metadata based on the first pseudo-asset backup and the second pseudo-asset backup; and

initiating merging of the first pseudo-asset backup and the second pseudo-asset backup on the backup storages using the asset backup metadata to generate an asset backup.

6. The system of claim 5 , wherein the asset backup comprises the asset components and the asset entry associated with the asset.

7. The system of claim 5 , wherein the exclusion tags specify asset components to be excluded from being backed up using the first backup thread and the second backup thread.

8. The system of claim 5 , wherein:

the first pseudo-asset backup comprises:

a first portion of asset data of the asset corresponding to the first portion of the asset components; and

a first portion of the asset entry corresponding to the first portion of the asset data and

the second pseudo-asset backup comprises:

a second portion of asset data of the asset corresponding to the second portion of the asset components; and

a second portion of the asset entry corresponding to the second portion of the asset data.

9. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for backing up data, the method comprising:

obtaining a backup request; and

in response to the backup request:

obtaining an asset and an asset entry from a file system metadata repository associated with the backup request;

identifying asset components of the asset using the asset entry, wherein the asset entry indicates a logical division of the asset components based on an asset structure, asset component sizes, and one or more exclusion tags associated with the asset specified by the asset entry;

dividing the asset components into a first portion of the asset components and a second portion of the asset components based on the logical division of the asset components, wherein the logical division of the asset components specifies an even distribution of asset component sizes between the first portion of the asset components and the second portion of the asset components;

assigning the first portion of the asset components to a first backup thread and the second portion of the asset components to a second backup thread to be backed up as pseudo-assets based on the logical division of the asset components, wherein:

the first portion of the asset components comprises a first portion of files and folders of the asset, and

the second portion of the asset components comprises a second portion of files and folders of the asset;

executing the first backup thread and the second backup thread to generate a first pseudo-asset backup and a second pseudo-asset backup, wherein the first backup thread is executed in parallel with the second backup thread, wherein an even distribution of computing resources is used to execute the first backup thread and the second backup thread;

storing the first pseudo-asset backup and the second pseudo-asset backup on backup storages;

updating asset backup metadata based on the first pseudo-asset backup and the second pseudo-asset backup; and

initiating merging of the first pseudo-asset backup and the second pseudo-asset backup on the backup storages using the asset backup metadata to generate an asset backup.

10. The non-transitory computer readable medium of claim 9 , wherein the asset backup comprises the asset components and the asset entry associated with the asset.

11. The non-transitory computer readable medium of claim 9 , wherein the exclusion tags specify asset components to be excluded from being backed up using the first backup thread and the second backup thread.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2020
From: YADAV, SUNIL; SHARMA, MANISH; BANSAL, AADITYA RAKESH; CHOPRA, SHELESH
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053448/0257 →