Data de-duplication using thin provisioning
First Claim
Patent Images
1. A method of de-duplicating data, comprising:
- providing a first volume including at least one pointer to a second volume that corresponds to physical storage space, wherein the first volume is a logical volume;
detecting a first set of data as a duplicate of a second set of data stored on the second volume at a first data chunk; and
modifying a pointer of the first volume associated with the first set of data to point to the first data chunk, wherein, after modifying the pointer, no additional physical storage space is allocated for the first set of data, wherein the first volume includes a first chunk and a second chunk, and wherein the first chunk of the first volume includes the pointer to the first data chunk of the second volume, and wherein the second chunk of the first volume includes a pointer that points to the first chunk of the first volume.
9 Assignments
0 Petitions
Accused Products
Abstract
A system for de-duplicating data includes providing a first volume including at least one pointer to a second volume that corresponds to physical storage space, wherein the first volume is a logical volume. A first set of data is detected as a duplicate of a second set of data stored on the second volume at a first data chunk. A pointer of the first volume associated with the first set of data is modified to point to the first data chunk. After modifying the pointer, no additional physical storage space is allocated for the first set of data.
-
Citations
25 Claims
-
1. A method of de-duplicating data, comprising:
-
providing a first volume including at least one pointer to a second volume that corresponds to physical storage space, wherein the first volume is a logical volume; detecting a first set of data as a duplicate of a second set of data stored on the second volume at a first data chunk; and modifying a pointer of the first volume associated with the first set of data to point to the first data chunk, wherein, after modifying the pointer, no additional physical storage space is allocated for the first set of data, wherein the first volume includes a first chunk and a second chunk, and wherein the first chunk of the first volume includes the pointer to the first data chunk of the second volume, and wherein the second chunk of the first volume includes a pointer that points to the first chunk of the first volume. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product, stored on a computer-readable medium, for de-duplicating data, comprising:
-
executable code that provides a first volume including at least one pointer to a second volume that corresponds to physical storage space, wherein the first volume is a logical volume; executable code that detects a first set of data as a duplicate of a second set of data stored on the second volume at a first data chunk; and executable code that modifies a pointer of the first volume associated with the first set of data to point to the first data chunk, wherein, after modifying the pointer, no additional physical storage space is allocated for the first set of data, wherein the first volume includes a first chunk and a second chunk, and wherein the first chunk of the first volume includes the pointer to the first data chunk of the second volume, and wherein the second chunk of the first volume includes a pointer that points to the first chunk of the first volume. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A computer storage device, comprising:
-
a plurality of interconnected directors, wherein at least some of the directors handle reading and writing data for the computer storage device; a plurality of disk drives, coupled to at least some of the directors, that store data for the computer storage device; and computer software, provided on a computer readable medium of at least one of the directors, having executable code that provides a first volume including at least one pointer to a second logical volume that maps allocations of physical storage space, wherein the first volume is a logical volume, executable code that detects a first set of data as a duplicate of a second set of data stored on the second volume at a first data chunk, and executable code that modifies a pointer of the first volume associated with the first set of data to point to the first data chunk, wherein, after modifying the pointer, no additional physical storage space is allocated for the first set of data, wherein the first volume includes a first chunk and a second chunk, and wherein the first chunk of the first volume includes the pointer to the first data chunk of the second logical volume, and wherein the second chunk of the first volume includes a pointer that points to the first chunk of the first volume. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A computer storage system, comprising:
-
a remote storage device; and a local storage device coupled to the remote storage device via a data link, the local storage device having at least one processor that controls a first logical volume of the local storage device, the first logical volume including at least one pointer to a second volume of the local storage device that corresponds to physical storage space, wherein in response to the local storage device detecting duplicate data prior to transmission of data to the remote storage device, the local storage device transmits information indicative of the duplicate data instead of the data, wherein the first logical volume includes a first chunk and a second chunk, and wherein the first chunk of the first logical volume includes the at least one pointer to the second volume, and wherein the second chunk of the first logical volume includes a pointer that points to the first chunk of the first logical volume. - View Dependent Claims (20, 21, 22, 23)
-
-
24. A method of cloning data, comprising:
-
providing a first volume including at least one pointer to a second volume that corresponds to physical storage space, wherein the at least one pointer of the first volume points to a data chunk stored on the second volume, and wherein the first volume is a logical volume, wherein the first volume includes a first chunk and a second chunk, and wherein the first chunk of the first volume includes the at least one pointer to the data chunk stored on the second volume, and wherein the second chunk of the first volume includes a pointer that points to the first chunk of the first volume; providing a third volume including at least one pointer, wherein the third volume is another logical volume; and modifying the at least one pointer of the third volume to point to the data chunk without allocating any additional physical storage space. - View Dependent Claims (25)
-
Specification