Storage of a data chunk with a colliding fingerprint
First Claim
1. An apparatus comprising:
- a controller; and
a computer-readable storage medium comprising instructions that, when executed by the controller, cause the controller to;
receive a first data chunk from a source device;
generate a first fingerprint of the first data chunk;
in response to a determination that the first fingerprint does not match any of a plurality of fingerprints, including a second fingerprint of a second data chunk, store the first data chunk in a first storage pool associated with first particular data chunks having non-colliding fingerprints; and
in response to determinations that the first fingerprint matches the second fingerprint of the second data chunk and the first data chunk does not match the second data chunk, store the first data chunk in a second storage pool associated with second particular data chunks with colliding fingerprints.
2 Assignments
0 Petitions
Accused Products
Abstract
Example implementations relate to data chunk storage. For example, an implementation includes an apparatus that includes a processor. The processor is to receive a first data chunk from a source device and to generate a first fingerprint of the first data chunk. In response to a determination that the first fingerprint matches a second fingerprint of a second data chunk, the processor is to select a storage pool from a plurality of storage pools at a storage device to store the first data chunk based on the first data chunk and based on the second data chunk. The plurality of storage pools includes a first storage pool associated with first particular data chunks with non-colliding fingerprints and a second storage pool associated with second particular data chunks with colliding fingerprints.
63 Citations
16 Claims
-
1. An apparatus comprising:
-
a controller; and a computer-readable storage medium comprising instructions that, when executed by the controller, cause the controller to; receive a first data chunk from a source device; generate a first fingerprint of the first data chunk; in response to a determination that the first fingerprint does not match any of a plurality of fingerprints, including a second fingerprint of a second data chunk, store the first data chunk in a first storage pool associated with first particular data chunks having non-colliding fingerprints; and in response to determinations that the first fingerprint matches the second fingerprint of the second data chunk and the first data chunk does not match the second data chunk, store the first data chunk in a second storage pool associated with second particular data chunks with colliding fingerprints. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
receiving, at a storage device, a first data chunk from a source device; generating a first fingerprint of the first data chunk; comparing the first fingerprint to a plurality of fingerprints, including a second fingerprint of a second data chunk; when the first fingerprint does not match the second fingerprint, storing the first data chunk in a first storage pool of a plurality of storage pool associated with at least one storage device, the first storage pool associated with data chunks having non-colliding fingerprints; when the first fingerprint matches the second fingerprint and the first data chunk does not match the second data chunk, storing the first data chunk in a second storage pool associated with data chunks having colliding fingerprints. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer-readable storage medium comprising instructions that when executed cause a controller of a storage device to:
-
receive a first data chunk from a source device; generate a first fingerprint of the first data chunk; compare the first fingerprint to a plurality of fingerprints, including a second fingerprint of a second data chunk; when the first fingerprint does not match any of the plurality of fingerprints, store the first data chunk in a first storage pool associated with non-colliding fingerprints; when the first fingerprint matches the second fingerprint, compare the first data chunk to the second data chunk; and when the first fingerprint matches the second fingerprint and the first data chunk does not match the second data chunk, store the first data chunk in a second storage pool associated with colliding fingerprints. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification