IP Library Granted Patent US 9,891,860
Granted Patent B1
US 9,891,860 · App. 13/930,337 · Granted Feb 13, 2018

Managing copying of data in storage systems

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,891,860
App. No.
13/930,337
Granted
Feb 13, 2018
Kind
B1
Abstract

A method is used in managing copying of data in storage systems. A request is received to copy a portion of a source logical object to a target logical object. The source and target logical objects are subject to a deduplicating technique. The portion of the source logical object is copied to the target logical object by updating metadata of the target logical object. The target logical object shares the portion of the source logical object.

Claims (30)

1. A method for use in managing copying of data in storage systems, the method comprising:

receiving a request to perform a copy operation on a portion of a source logical object for copying contents of the portion of the source logical object to a portion of a target logical object, wherein the copy operation provides an offset within the source logical object and a length of data for copying the portion of the source logical object that starts at the offset, wherein a portion of a logical object includes a set of data blocks;

determining whether the source and target logical objects are enabled for applying a deduplicating technique;

determining whether the portion of the source logical object is aligned based on a size of a data block configured on a storage system; and

based on the determining whether the source and target logical objects are enabled for applying the deduplicating technique, performing the copy operation on the portion of the source logical object for copying the contents of the portion of the source logical object to the portion of the target logical object, wherein the copy operation is performed on the portion of the source logical object by sharing a set of data blocks associated with the portion of the source logical object with the portion of the target logical object by updating metadata associated with the portion of the target logical object to refer to the portion of the source logical without having to copy the contents of the portion of the source logical object to the portion of the target logical object and without having to interact with a deduplication system upon determining that the source and target logical objects are enabled for applying the deduplicating technique and the portion of the source logical object aligns with the size of a data block configured on the storage system, wherein updating the metadata includes updating mapping pointers associated with a set of data blocks associated with the portion of the target logical object, wherein a mapping pointer is associated with a data block, wherein the mapping pointer includes a distributed weight indicating whether the data block has been shared.

2. The method of claim 1 , wherein the source and target logical objects are selected from the group consisting of a deduplication domain, a storage extent, a LUN, a file and a data block, wherein the data Hock is a fixed size chunk of a physical disk storage.

3. The method of claim 1 , wherein a deduplication domain comprises a set of storage extents, wherein each storage extent of the set of storage extents comprises a set of LUNs, each LUN of the set of LUNs is a logical representation of a subset of physical disk storage.

4. The method of claim 1 , wherein a mapping pointer for a data block points to a Virtual Block Mapping object, wherein the Virtual Block Mapping object includes another mapping pointer to refer to a data block and a total distributed weight indicating whether the Virtual Block Mapping object has been shared.

5. The method of claim 1 , wherein the portion of the source logical object ncludes a set of source file system blocks and the target logical object includes a set of target file system blocks, wherein each source file system block of the set of source file system blocks is copied to respective target file system block of the set of target file system blocks.

6. The method of claim 5 , wherein copying a source file system block of the set of source file system blocks to a target file system block of the set of target file system blocks further comprising:

updating a Virtual Block Mapping object referred to by a mapping pointer of the target system block by changing a mapping pointer included in the Virtual Block Mapping object to point to a Virtual Block Mapping object referred to by a mapping pointer of the source file system block;

determining whether the target file system block has been shared; and

based on the determination, freeing the target file system block.

7. The method of claim 6 , further comprising:

updating a total distributed weight of the Virtual Block Mapping object referred to by the mapping pointer of the source file system Hock.

8. A system for use in managing copying of data in storage systems, the system comprising a processor configured to:

receive a request to perform a copy operation on a portion of a source logical object for copying contents of the portion of the source logical object to a portion of a target logical object, wherein the copy operation provides an offset within the source logical object and a length of data for copying the portion of the source logical object that starts at the offset, wherein a portion of a logical object includes a set of data blocks;

determine whether the source and target logical objects are enabled for applying a deduplicating technique;

determine whether the portion of the source logical object is aligned based on a size of a data block configured on a storage system; and

based on the determining whether the source and target logical objects are enabled for applying the deduplicating technique, perform the copy operation on the portion of the source logical object for copying the contents of the portion of the source logical object to the portion of the target logical object, wherein the copy operation is performed on the portion of the source logical object by sharing a set of data blocks associated with the portion of the source logical object with the portion of the target logical object by updating metadata associated with the portion of the target logical object to refer to the portion of the source logical object without having to copy the contents of the portion of the source logical object to the portion of the target logical object and without having to interact with a deduplication system upon determining that the source and target logical objects are enabled for applying the deduplicating technique and the portion of the source logical object aligns with the size of a data block configured on the storage system, wherein updating the metadata includes updating mapping pointers associated with a set of data blocks associated with the portion of the target logical object, wherein a mapping pointer is associated with a data block, wherein the mapping pointer includes a distributed weight indicating whether the data block has been shared.

9. The system of claim 8 , wherein the source and target logical objects are selected from the group consisting of a deduplication domain, a storage extent, a LUN, a file and a data block, wherein the data block is a fixed size chunk of a physical disk storage.

10. The system of claim 8 , wherein a deduplication domain comprises a set of storage extents, wherein each storage extent of the set of storage extents comprises a set of LUNs, each LUN of the set of LUNs is a logical representation of a subset of physical disk storage.

11. The system of claim 8 , wherein a mapping pointer for a data block points to a Virtual Block Mapping object, wherein the Virtual Block Mapping object includes another mapping pointer to refer to a data block and a total distributed weight indicating whether the Virtual Block Mapping object has been shared.

12. The system of claim 8 , wherein the portion of the source logical object includes a set of source file system blocks and the target logical object includes a set of target file system blocks, wherein each source file system block of the set of source file system blocks is copied to respective target file system block of the set of target file system blocks.

13. The system of claim 12 , wherein copying a source file system block of the set of source file system Hocks to a target file system block of the set of target file system Hocks further comprising:

update a Virtual Block Mapping object referred to by a mapping pointer of the target file system block by changing a mapping pointer included in the Virtual Block Mapping object to point to a Virtual Block Mapping object referred to by a mapping pointer of the source file system block;

determine whether the target file system block has been shared; and

based on the determination, free the target file system block.

14. The system of claim 13 , further comprising:

update a total distributed weight of the Virtual Block Mapping object referred to by the mapping pointer of the source file system block.

Assignments (7)
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 (046366/0014) Recorded May 20, 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 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0093 →
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 AGREEMENT (NOTES) Recorded Jun 1, 2018
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 046366/0014 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2017
From: DELGADO, DIANE M.; YETTO, LAWRENCE; SEIBEL, CHRISTOPHER; GILLONO, JOHN F.; ARMANGAU, PHILIPPE; KARABAN, ALEXEI
To: EMC CORPORATION
Reel/Frame 044115/0256 →