Patent ID: 9575681
Date: 2017-02-21
CPC Classifications: G06F

Claim:
1. A method of data deduplication for a data storage system, comprising: comparing, by a controller, a first attribute of a received data page to one or more corresponding first attributes of one or more data pages stored in the storage system; in response to the first attribute of the received data page not being the same as one or more of the first attributes, storing, by the controller, the received data page in the storage system; in response to the first attribute of the received data page being the same as one or more of the first attributes, comparing, by the controller, a fingerprint of the received data page to one or more fingerprints of the one or more data pages stored in the storage system; in response to the fingerprint of the received data page not being the same as one or more of the fingerprints, storing, by the controller, the received data page in the storage system; in response to the fingerprint of the received data page being the same as one or more of the fingerprints, replacing, by the controller, the received data page with a reference to a corresponding data page included in the one or more data pages stored in the storage system and discarding the received data page, wherein the first attribute corresponds to one of a compressed page size and a cyclic redundancy check (CRC) value; in response to the first attribute being the same as one or more of the first attributes, comparing, by the controller, a second attribute of the received data page to one or more corresponding second attributes of the one or more data pages stored in the storage system prior to the comparing, by the storage system, a fingerprint of the received data page; in response to the second attribute of the received data page not being the same as one or more of the second attributes, storing, by the controller, the received data page in the storage system; and in response to the second attribute of the received data page being the same as one or more of the second attributes, comparing, by the controller, the fingerprint of the received data page to one or more fingerprints of the one or more data pages stored in the storage system, wherein the second attribute corresponds to a remaining one of the compressed page size and the CRC value; wherein the first attribute corresponds to the compressed page size, the second attribute corresponds to the CRC value, and the method further comprises: