Methods and systems for object level de-duplication for solid state devices
First Claim
Patent Images
1. A method for providing object level de-duplication for solid state storage devices (SSDs), comprising:
- receiving a block of data at a solid state storage device (SSD), wherein the block of data comprises a header portion and a payload, and wherein the header portion comprises context information;
determining, by the SSD, that the payload should be de-duplicated prior to storage based solely on the context information stored within the header portion without analyzing the payload;
compressing the payload such that the compressed payload includes random data;
building a hash, the hash consisting of a subset of the random data less than an entirety of the compressed payload;
de-duplicating the compressed payload using the hash; and
storing the de-duplicated payload to the solid state storage device.
9 Assignments
0 Petitions
Accused Products
Abstract
In one aspect, the present disclosure relates to a method of de-duplicating data in a solid state storage device. The method can include receiving a block of data to be written to a solid state storage device, wherein the block of data comprises header portion and a payload, wherein the header portion comprises context information; and determining whether the payload should be de-duplicated prior to storage, based on the context information stored within the header portion; if the payload is determined to be de-duplicated, de-duplicating the payload; and storing the de-duplicated payload to the solid state storage device.
-
Citations
20 Claims
-
1. A method for providing object level de-duplication for solid state storage devices (SSDs), comprising:
-
receiving a block of data at a solid state storage device (SSD), wherein the block of data comprises a header portion and a payload, and wherein the header portion comprises context information; determining, by the SSD, that the payload should be de-duplicated prior to storage based solely on the context information stored within the header portion without analyzing the payload; compressing the payload such that the compressed payload includes random data; building a hash, the hash consisting of a subset of the random data less than an entirety of the compressed payload; de-duplicating the compressed payload using the hash; and storing the de-duplicated payload to the solid state storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A solid state device (SSD) providing object level de-duplication, comprising:
-
a host interface for communicating to a host device; a flash memory for storing data; and a de-duplication engine comprising logic stored in a computer readable medium, the logic configured to; receive a block of data, wherein the block of data comprises a header portion and a payload, and wherein the header portion comprises context information; determine the payload should be de-duplicated prior to storage based solely on the context information stored within the header portion without analyzing the payload; compress the payload such that the compressed payload includes random data; build a hash, the hash consisting of a subset of the random data less than an entirety of the compressed payload; de-duplicate the compressed payload using the hash; and store the de-duplicated payload to the flash memory. - View Dependent Claims (13, 14, 15)
-
-
16. A method for providing object level de-duplication for solid state storage devices (SSDs), comprising:
-
receiving, at a solid state storage device (SSD), a first block of data to be written to the SSD, wherein the first block of data comprises first header information and a first object; determining, at the SSD based solely on the first header information without analyzing the first object, the first object should be de-duplicated prior to storage; compressing the first object such that the first object includes random data; building a hash, the hash consisting of a subset of the random data less than an entirety of the compressed first object; de-duplicating, at the SSD, the compressed first object using the hash; and storing the de-duplicated first object to the SSD. - View Dependent Claims (17, 18, 19, 20)
-
Specification