IP Library Granted Patent US 10,678,652
Granted Patent B1
US 10,678,652 · App. 15/581,163 · Granted Jun 9, 2020

Identifying changed files in incremental block-based backups to backup indexes

Inventors: Ravi Rangapuram (Bangalore, IN); Pavan Kumar Dattatreya Ati (Bangalore, IN); Sridhar Surampudi (Rajahmundry, IN)
Assignee: EMC IP Holding Company LLC
G06F11/1451G06F16/13G06F16/148G06F2201/84
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,678,652
App. No.
15/581,163
Granted
Jun 9, 2020
Kind
B1
Abstract

Embodiments are directed to a method of identifying changed files in incremental block based backups, by obtaining changed data blocks of a file from a change block tracking (CBT) driver, wherein the file has an associated master file table (MFT) record and a parent MFT record number used in a file system, and constructing a complete file path of the file by traversing from the changed MFT record to the root directory using respective parent MFT record numbers by iteratively parsing each record by extracting the file name and parent MFT record number and appending the file name to a previous MFT record file name.

Claims (36)

1. A computer-implemented method of identifying changed files in incremental block based backups, comprising:

obtaining changed data blocks of a file from a change block tracking (CBT) driver, wherein the file has an associated master file table (MFT) record and a parent MFT record number used in a file system;

constructing a complete file path of the file by traversing from the changed MFT record to the root directory using respective parent MFT record numbers by iteratively parsing each record by extracting the file name and parent MFT record number and appending the file name to a previous MFT record file name to create an appended file name;

indexing only the changed data blocks of the complete file path using the extracted MFT file name and parent MFT record number to create a set of indexes for backup; and

providing the appended file name and the indexes to a backup engine to backup data blocks comprising the file, wherein the backed up indexes eliminate a need to traverse and mount a data saveset including the file to allow a user to perform a specific search operation.

2. The method of claim 1 wherein the system comprises a Microsoft Windows based network, and wherein the file system is NTFS.

3. The method of claim 2 wherein the master file table (MFT) comprises records that represent corresponding files and folders in the NTFS system, and wherein an MFT zone location is stored in NTFS boot information.

4. The method of claim 3 further comprising:

parsing an NTFS boot record to obtain MFT zone location information for data blocks of the file; and

intersecting MFT zone blocks obtained in the parsing step with the changed data blocks.

5. The method of claim 4 wherein the intersecting step comprises scanning and comparing a block location of the file table zone and received block identifiers to find matching blocks.

6. The method of claim 5 further comprising comparing a modification time for the each record to eliminate MFT records with corresponding access times that are also part of changed blocks.

7. The method of claim 1 wherein the appended file name corresponds to a full file system path of the file as defined by the file system.

8. The method of claim 1 wherein the block based backups executed on client machines that are part of a data domain backup system.

9. A system comprising a processor-based executable module configured to identify changed files in incremental block based backups in a large-scale data storage system, comprising:

a reverse mapping component mapping each changed data block to a file to which the block belongs by obtaining changed data blocks of a file from a change block tracking (CBT) driver, wherein the file has an associated master file table (MFT) record and a parent MFT record number used in a file system; and

a recursive processing component constructing a complete file path of the file by traversing from the changed MFT record to the root directory using respective parent MFT record numbers by iteratively parsing each record by extracting the file name and parent MFT record number and appending the file name to a previous MFT record file name to create an appended file name, indexing only the changed data blocks of the complete file path using the extracted MFT file name and parent MFT record number to create a set of indexes for backup, and providing the appended file name and the indexes to a backup engine to backup data blocks comprising the file, wherein the backed up indexes eliminate a need to traverse and mount a data saveset including the file to allow a user to perform a specific search operation.

10. The system of claim 9 wherein the system comprises a Microsoft Windows based network, and wherein the file system is NTFS, and wherein the master file table (MFT) comprises records that represent corresponding files and folders in the NTFS system, and wherein an MFT zone location is stored in NTFS boot information.

11. The system of claim 10 further comprising:

a parser parsing an NTFS boot record to obtain MFT zone location information for data blocks of the file; and

an intersecting component intersecting MFT zone blocks obtained in the parsing step with the changed data blocks.

12. The system of claim 11 wherein the intersecting component scans and compares a block location of the file table zone and received block identifiers to find matching blocks.

13. The system of claim 12 further comprising a comparator comparing a modification time for the each record to eliminate MFT records with corresponding access times that are also part of changed blocks.

14. The system of claim 9 wherein the appended file name corresponds to a full file system path of the file as defined by the file system.

15. The system of claim 9 wherein the block based backups executed on client machines that are part of a data domain backup system.

16. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein, the computer-readable program code adapted to be executed by one or more processors to implement a method for identifying changed files in incremental block based backups, by:

obtaining changed data blocks of a file from a change block tracking (CBT) driver, wherein the file has an associated master file table (MFT) record and a parent MFT record number used in a file system; and

constructing a complete file path of the file by traversing from the changed MFT record to the root directory using respective parent MFT record numbers by iteratively parsing each record by extracting the file name and parent MFT record number and appending the file name to a previous MFT record file name to create an appended file name;

indexing only the changed data blocks of the complete file path using the extracted MFT file name and parent MFT record number to create a set of indexes for backup; and

providing the appended file name and the indexes to a backup engine to backup data blocks comprising the file, wherein the backed up indexes eliminate a need to traverse and mount a data saveset including the file to allow a user to perform a specific search operation.

17. The computer program product of claim 16 wherein the system comprises a Microsoft Windows based network, and wherein the file system is NTFS, and wherein the master file table (MFT) comprises records that represent corresponding files and folders in the NTFS system, and wherein an MFT zone location is stored in NTFS boot information.

18. The computer program product of 17 , wherein the method further comprises:

parsing an NTFS boot record to obtain MFT zone location information for data blocks of the file; and

intersecting MFT zone blocks obtained in the parsing step with the changed data blocks, wherein the intersecting step comprises scanning and comparing a block location of the file table zone and received block identifiers to find matching blocks.

19. The computer program product of claim 18 wherein the method further comprises comparing a modification time for the each record to eliminate MFT records with corresponding access times that are also part of changed blocks.

20. The computer program product of claim 19 wherein the appended file name corresponds to a full file system path of the file as defined by the file system.

Assignments (8)
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 (042769/0001) Recorded Apr 26, 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 (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2017
From: RANGAPURAM, RAVI; ATI, PAVAN KUMAR DATTATREYA; SURAMPUDI, SRIDHAR
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042175/0599 →
Cited By (2)
US 12,430,435 US 12,625,987