Patent ID: 7130957

Claim:
A storage system comprising: a cache configured to store a plurality of data blocks in a first plurality of locations, wherein said cache is a non-volatile storage; a first metadata storage including a plurality of entries configured to store metadata including block addresses of data blocks within said cache, wherein said first metadata storage is a non-volatile storage; a second metadata storage including a second plurality of locations each configured to store metadata including a block address identifying a corresponding data block within said cache and further including a first pointer to said corresponding data block within said cache, wherein said second metadata storage is a volatile storage; wherein at least one of said second plurality of locations is further configured to store a second pointer to another of said second plurality of locations that stores metadata corresponding to a related data block; wherein said metadata stored within the second metadata storage is arranged into one or more cache descriptors each associated with a respective data block; and wherein said one or more cache descriptors are arranged into one or more groups, wherein a given group includes one or more cache descriptors that correspond to contiguous logical block addresses of an underlying storage volume.