Deduplication of regions with a storage system
First Claim
Patent Images
1. A computer system comprising:
- a data storage subsystem comprising a plurality of data storage locations on a plurality of storage devices; and
a storage controller coupled to the plurality of storage devices, wherein the storage controller is configured to;
maintain a table to track mappings between logical groups of active data in the plurality of storage devices and logical groups of snapshot data in the plurality of storage devices;
determine that snapshot data within a first range of a first logical group of snapshot data is representative of active data within a second range of second logical group of active data;
in response to determining that snapshot data within the first range is representative of active data within the second range, indicate within the table, a mapping of the second range of the second logical group of active data to the first range of the first logical group of snapshot data; and
responsive to indicating with the table, the mapping of the second range to the first range, invalidate a plurality of entries corresponding to the second range in the table.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for performing coarse-grained deduplication of volume regions. A storage controller detects that a first region of a first volume is identical to a second region of a second volume, wherein the first volume points to a first medium and the second volume points to a second medium. In response to detecting the identical regions, the storage controller stores an indication that the first range of the first medium underlies the second range of the second medium. Also in response to detecting the identical regions, the mappings associated with the second range of the second medium are invalidated.
148 Citations
17 Claims
-
1. A computer system comprising:
-
a data storage subsystem comprising a plurality of data storage locations on a plurality of storage devices; and a storage controller coupled to the plurality of storage devices, wherein the storage controller is configured to; maintain a table to track mappings between logical groups of active data in the plurality of storage devices and logical groups of snapshot data in the plurality of storage devices; determine that snapshot data within a first range of a first logical group of snapshot data is representative of active data within a second range of second logical group of active data; in response to determining that snapshot data within the first range is representative of active data within the second range, indicate within the table, a mapping of the second range of the second logical group of active data to the first range of the first logical group of snapshot data; and responsive to indicating with the table, the mapping of the second range to the first range, invalidate a plurality of entries corresponding to the second range in the table. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for use in a storage system, the storage system including a plurality of storage devices, the method comprising:
-
maintaining a table to track mappings between logical groups of active data in the plurality of storage devices and logical groups of snapshot data in the plurality of storage devices; determining that snapshot data within a first range of a first logical group of snapshot data is representative of active data within a second range of second logical group of active data; in response to determining that snapshot data within the first range is representative of active data within the second range, indicating within the table, a mapping of the second range of the second logical group of active data to the first range of the first logical group of snapshot data; and responsive to indicating with the table, the mapping of the second range to the first range, invalidating a plurality of entries corresponding to the second range in the table. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A non-transitory computer readable storage medium storing program instructions, wherein the program instructions are executable by a processor to:
-
maintain a table to track mappings between logical groups of active data in the plurality of storage devices and logical groups of snapshot data in the plurality of storage devices; determine that snapshot data within a first range of a first logical group of snapshot data is representative of active data within a second range of second logical group of active data; in response to determining that snapshot data within the first range is representative of active data within the second range, indicate within the table, a mapping of the second range of the second logical group of active data to the first range of the first logical group of snapshot data; and responsive to indicating with the table, the mapping of the second range to the first range, invalidate a plurality of entries corresponding to the second range in the table. - View Dependent Claims (14, 15, 16, 17)
-
Specification