Patent ID: 8843711

Claim:
A method of processing data write requests in a data storage system, comprising: identifying a misaligned compressed data block that occupies only a portion of a first uniformly sized data block of a storage device by determining disparity between a memory address of the misaligned compressed data block with a memory address of the uniformly sized first data block where the compressed data block is stored; receiving a data write request, said data write request configured to replace old data, stored at the compressed data block, with new uncompressed data; allocating a new uniformly sized data block at the storage device; allocating a first extent data structure configured to associate a location of the new uncompressed data with a location of the old data; writing the new uncompressed data to the new uniformly sized block of data; recording a location of the new uncompressed data to the first extent data structure; recording a first location of the old data to the first extent data structure; and compressing the new uncompressed data based on storage device usage or storage device capacity.